Avatar billede grise_bassen Nybegynder
31. marts 2005 - 08:34 Der er 93 kommentarer og
1 løsning

fejl i brugernes profil gæstebog. hjælp?

i mit brugersystem har brugerne deres egen profil med gæstebog, men der skal åbenbart være et indlæg i gæstebogen før det virker.
er der ikke en der vil gøre så det virker selvom der ikke er nogen indlæg?

hvis ikke for står hvad jeg men så går ind på
http://4boys.4b.funpic.org/test/

login med 2 forskellige bruger og se forskellen


1.  bruger: test pass: test
2.  bruger: test1 pass: test1

eller kig på de her billeder. kopier billede link adr. sæt den ind i adr. linjen for at se billedet

sådan her
http://4boys.4b.funpic.org/billede1.jpg


i stedet for sådan her
http://4boys.4b.funpic.org/billede2.JPG


php koden i må skrive hvis i skal have hele min kode


<?
session_start();
if (session_is_registered("brugernavn") && session_is_registered("kodeord") && session_is_registered("logintid")) {

?>
<?
include "mysql/mysql.php";
if($_GET[id] == "") {
print "Du mangler et id!";
}else{

$hent_bruger = mysql_query("SELECT * FROM brugere WHERE id = '$_GET[id]'") or die(mysql_error());
while($vis = mysql_fetch_array($hent_bruger)) {
?>

Brugernavn: <? echo $vis[brugernavn]; ?><br>
Navn: <? echo $vis[navn]; ?><br>
Email: <a href="mailto:<? echo $vis[email]; ?>"><? echo $vis[email]; ?></a><br>
Hjemmeside: <a href="<? echo $vis[hjemmeside]; ?>"><? echo $vis[hjemmeside]; ?></a><br>
Fritekst: <br><? echo $vis[fritekst]; ?><br>



<bR><br>
<b> <? echo $vis[brugernavn]; ?>´s gæstebog!</b>
<br>
<?
}
}
if($_GET['mode'] == "slet" AND !empty($_GET['id'])) {
mysql_query(sprintf("DELETE FROM profil_gb WHERE id = %d",$_GET['id'])) or die(mysql_error());
print "Indlæget er nu slettet!";
}





/* Antallet af poster vi ønsker vist på hver side */
$pr_side = 10;

/* Vi tæller antallet af poster i tabellen husk at ændre ‘table’ til dit eget tabelnavn */
$antal = mysql_result(mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer=$_GET[id]"),0) or die(mysql_error());

/* Hvis visfra-variablen ikke findes i URL-feltet og den ikke er et nummer og den er større end antallet i databasen, så sættes den til 0, ellers sættes den til værdien fra URL feltet */
$vis_fra = (isset($_GET["visfra"]) && is_numeric($_GET["visfra"]) && $_GET["visfra"] < $antal) ? $_GET["visfra"] : 0;

/* Vi laver et database udtræk med limit, så den kun hiver det rigtige antal ud fra tabellen, husk at ændre ‘table’ til dit eget tabelnavn */
$hent_beskeder = mysql_query("SELECT * FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side") or die(mysql_error());
/* Vi kører en while og udskriver data, det jeg har sat på er blot et eksempel */

while($visb = mysql_fetch_array($hent_beskeder)) {

print "Brugernavn: ";
print "$visb[brugernavn]";

print "  -  ";

print "Dato: ";
print "$visb[dato]";

print "  -  ";

if($visb['brugernavn'] == $_SESSION['brugernavn'])  {
print "<a href='?mode=slet&id=$visb[id]'>Slet indlæg</a><br>";
}

print "<br>Tekst: ";
print "$visb[tekst]<br>";

print "<br>";
?>
<?
}

?>

<?

echo "<hr />";

/* Der undersøges om der skal udskrives et ”forrige side”-link, er dette tilfældet udskrives linket */
if ($vis_fra > 0) {
$back= $vis_fra - $pr_side;
echo "<a href='$_SERVER[PHP_SELF]?id=$_GET[id]&visfra=$back'>Forrige</a> ";
}
$page = 1;

/* Alle siderne udskrives så man med et klik kan få resultaterne fra fx 90-100 */
for ($start = 0; $antal > $start; $start = $start + $pr_side) {
if($vis_fra != $page * $pr_side - $pr_side) {
echo "<a href='$_SERVER[PHP_SELF]?id=$_GET[id]&visfra=$start'>$page</a> ";
} else {
echo $page." ";
}
$page++;
}

/* Der undersøges om der skal udskrives et ”næste side”-link, er dette tilfældet udskrives linket */
if ($vis_fra < $antal - $pr_side) {
$next = $vis_fra + $pr_side;
echo " <a href='$_SERVER[PHP_SELF]?id=$_GET[id]&visfra=$next'>Næste</a>";
}
?>
<?
if($_POST[mode] == "skriv") {
if($_POST[tekst] != "") {
if($_GET[id] != "$_SESSION[brugernavn]") {

$dato = date('h:i:s');
mysql_query("INSERT INTO profil_gb (ejer, brugernavn, tekst, dato) VALUES ('$_GET[id]', '$_SESSION[brugernavn]', '$_POST[tekst]', '$dato')")or die(mysql_error());
print "<script language=\"javascript\">parent.location.replace('profil.php?id=$_GET[id]');</script>";
}
}
}

?>
<form action ="profil.php?id=<? echo $_GET[id]; ?>" method="POST">
<input type="hidden" name="mode" value="skriv">

<textarea name="tekst" rows="8" cols="30"></textarea><br>
<input type="submit" name="submit" value="Skriv">
</form>


<?
}else{
print "Du er ikke logget ind!";
}
?>
Avatar billede busschou Praktikant
31. marts 2005 - 08:48 #1
En typisk fejl kunne være at man kun udfører en bestemt kode hvis der er indlæg.
Samtidig glemmer man at udføre en anden kode hvis der ikke er indlæg
Umiddelbart kan jeg ikke se at du gør noget hvis der ikke er indlæg i databasen
Så med andre ord bliver du nød til at have to tilfælde
1) $antal = 0
2) $antal <> 0
Jeg synes det ser ud til du kun har dækket tilfælde 2
Avatar billede busschou Praktikant
31. marts 2005 - 08:51 #2
Så du kan jo inden din while($visb = mysql_fetch_array($hent_beskeder))
lave en if($antal==0){
?>
<form action ="profil.php?id=<? echo $_GET[id]; ?>" method="POST">
<input type="hidden" name="mode" value="skriv">

<textarea name="tekst" rows="8" cols="30"></textarea><br>
<input type="submit" name="submit" value="Skriv">
</form>
<?
}
-----------------------
Det burde lave din form i al fald
Avatar billede busschou Praktikant
31. marts 2005 - 08:56 #3
hmm med mindre jeg har talt dine {} forkert :/ ... så er det nok ikke det alligevel
Avatar billede busschou Praktikant
31. marts 2005 - 09:03 #4
Den må være gal med din while løkke som må køre i ring... andet kan jeg ikke se. For ellers ville den jo gå ned og lave din echo "<hr />";

Så prøv med:
------------------
if($antal == 0){
  while($visb = mysql_fetch_array($hent_beskeder)) {
    .....
}
------------------
Avatar billede busschou Praktikant
31. marts 2005 - 09:05 #5
Jeg er ikke 100 på om du evt kan gøre sådan her:
----------
while($visb = mysql_fetch_array($hent_beskeder) or die(mysql_error())
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 09:20 #6
gider du rette koden til?
for jeg kan ikke finde ud af php
Avatar billede busschou Praktikant
31. marts 2005 - 09:22 #7
Tag dette:
---------------------------
while($visb = mysql_fetch_array($hent_beskeder)) {

print "Brugernavn: ";
print "$visb[brugernavn]";

print "  -  ";

print "Dato: ";
print "$visb[dato]";

print "  -  ";

if($visb['brugernavn'] == $_SESSION['brugernavn'])  {
print "<a href='?mode=slet&id=$visb[id]'>Slet indlæg</a><br>";
}

print "<br>Tekst: ";
print "$visb[tekst]<br>";

print "<br>";
?>
<?
}
----------------------------
Udskift med
----------------------------
if($antal <> 0){
while($visb = mysql_fetch_array($hent_beskeder)) {

print "Brugernavn: ";
print "$visb[brugernavn]";

print "  -  ";

print "Dato: ";
print "$visb[dato]";

print "  -  ";

if($visb['brugernavn'] == $_SESSION['brugernavn'])  {
print "<a href='?mode=slet&id=$visb[id]'>Slet indlæg</a><br>";
}

print "<br>Tekst: ";
print "$visb[tekst]<br>";

print "<br>";
?>
<?
}
}
-----------------------
og det skal selvfølgelig være hvis $antal forskellig fra nul
Avatar billede busschou Praktikant
31. marts 2005 - 09:24 #8
og jeg glemte lige at det vist i php er "$antal != 0" istedet for "$antal <> 0"
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 09:29 #9
hmm der virker ikke det ser stadig sådan ud
Avatar billede busschou Praktikant
31. marts 2005 - 09:30 #10
og du fik rettet den sidste kommentar?
altså $antal != 0 ?
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 09:31 #11
ja jeg rette de fra

"$antal <> 0" til "$antal != 0"
Avatar billede busschou Praktikant
31. marts 2005 - 09:33 #12
ok
Den står og summer - så der er ingen tvivl om at det er
------
while($visb = mysql_fetch_array($hent_beskeder))
------
Som kører en uendelig løkke
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 09:34 #13
okay hvad skal jeg så gøre?
Avatar billede busschou Praktikant
31. marts 2005 - 09:34 #14
prøv at rette
while($visb = mysql_fetch_array($hent_beskeder))
til
while($visb = mysql_fetch_array($hent_beskeder)or Die(mysql_error()))
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 09:36 #15
Parse error: parse error, unexpected '}' in /usr/export/www/hosting/4boys/test/profil.php on line 284

linje 284

er slutningen af php koden

<?
}else{
print "Du er ikke logget ind!";
}
?>
Avatar billede busschou Praktikant
31. marts 2005 - 09:38 #16
har du slettet rettelsen med if sætningen?
For det betyder jo at der er en parantes } for meget et sted
Avatar billede busschou Praktikant
31. marts 2005 - 09:39 #17
prøv evt poste din kode igen
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 09:41 #18
arha det var da jeg skiftede
while($visb = mysql_fetch_array($hent_beskeder)) {
ud med
while($visb = mysql_fetch_array($hent_beskeder)or Die(mysql_error()))
kom jeg til at slette {

nu kan man se siden men det er stadig det samme som i starten
Avatar billede busschou Praktikant
31. marts 2005 - 09:43 #19
ok skal lige høre dig ad
Jeg tror problemet fremkommer fordi $hent_beskeder ikke indeholder noget
Er det det samme som at $antal = 0?
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 09:44 #20
forstår ikke hvad du mener men hvis du spørger om der er nogle beskeder i gæstebogen er svaret nej!
Avatar billede busschou Praktikant
31. marts 2005 - 09:46 #21
ok for så var min antagelse om at teste på $antal != 0 forkert
Så skal der tælles på $hent_beskeder
Dvs der skal laves en Count(*)
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 09:46 #22
okay hmm hvordan?=)
Avatar billede busschou Praktikant
31. marts 2005 - 09:47 #23
$hent_beskeder_antal = mysql_result(mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side" ),0) or die(mysql_error());
----------
Indsæt den ved dine andre sql statements
Avatar billede busschou Praktikant
31. marts 2005 - 09:48 #24
Den kode jeg lavede hvor du skrev
if($antal != 0) {
  while ..... osv
------
Ret den til
-----
if($hent_beskeder_antal != 0){
  while..... osv
-----
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 09:49 #25
jeg er ikke helt med hvor jeg skal indsætte den
Avatar billede busschou Praktikant
31. marts 2005 - 09:49 #26
ok to sek så poster jeg lige det hele :o)
Avatar billede busschou Praktikant
31. marts 2005 - 09:51 #27
tag dette:
---------
/* Antallet af poster vi ønsker vist på hver side */
$pr_side = 10;

/* Vi tæller antallet af poster i tabellen husk at ændre ‘table’ til dit eget tabelnavn */
$antal = mysql_result(mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer=$_GET[id]"),0) or die(mysql_error());

/* Hvis visfra-variablen ikke findes i URL-feltet og den ikke er et nummer og den er større end antallet i databasen, så sættes den til 0, ellers sættes den til værdien fra URL feltet */
$vis_fra = (isset($_GET["visfra"]) && is_numeric($_GET["visfra"]) && $_GET["visfra"] < $antal) ? $_GET["visfra"] : 0;

/* Vi laver et database udtræk med limit, så den kun hiver det rigtige antal ud fra tabellen, husk at ændre ‘table’ til dit eget tabelnavn */
$hent_beskeder = mysql_query("SELECT * FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side") or die(mysql_error());
/* Vi kører en while og udskriver data, det jeg har sat på er blot et eksempel */

while($visb = mysql_fetch_array($hent_beskeder)) {

print "Brugernavn: ";
print "$visb[brugernavn]";

print "  -  ";

print "Dato: ";
print "$visb[dato]";

print "  -  ";

if($visb['brugernavn'] == $_SESSION['brugernavn'])  {
print "<a href='?mode=slet&id=$visb[id]'>Slet indlæg</a><br>";
}

print "<br>Tekst: ";
print "$visb[tekst]<br>";

print "<br>";
?>
<?
}

?>
-----------------
udskift med:
-----------------
/* Antallet af poster vi ønsker vist på hver side */
$pr_side = 10;

/* Vi tæller antallet af poster i tabellen husk at ændre ‘table’ til dit eget tabelnavn */
$antal = mysql_result(mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer=$_GET[id]"),0) or die(mysql_error());

/* Hvis visfra-variablen ikke findes i URL-feltet og den ikke er et nummer og den er større end antallet i databasen, så sættes den til 0, ellers sættes den til værdien fra URL feltet */
$vis_fra = (isset($_GET["visfra"]) && is_numeric($_GET["visfra"]) && $_GET["visfra"] < $antal) ? $_GET["visfra"] : 0;

/*tæl antallet af beskeder der kan hentes */
$hent_beskeder_antal = mysql_result(mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side" ),0) or die(mysql_error());

/* Vi laver et database udtræk med limit, så den kun hiver det rigtige antal ud fra tabellen, husk at ændre ‘table’ til dit eget tabelnavn */
$hent_beskeder = mysql_query("SELECT * FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side") or die(mysql_error());
/* Vi kører en while og udskriver data, det jeg har sat på er blot et eksempel */

if($hent_beskeder_antal != 0){
while($visb = mysql_fetch_array($hent_beskeder)) {

print "Brugernavn: ";
print "$visb[brugernavn]";

print "  -  ";

print "Dato: ";
print "$visb[dato]";

print "  -  ";

if($visb['brugernavn'] == $_SESSION['brugernavn'])  {
print "<a href='?mode=slet&id=$visb[id]'>Slet indlæg</a><br>";
}

print "<br>Tekst: ";
print "$visb[tekst]<br>";

print "<br>";
?>
<?
}
}
?>
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 09:55 #28
det er stadig det samme som i starten!
Avatar billede busschou Praktikant
31. marts 2005 - 09:59 #29
prøv lige under:
-------------
/*tæl antallet af beskeder der kan hentes */
$hent_beskeder_antal = mysql_result(mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side" ),0) or die(mysql_error());
--------------
at lave en
echo "$hent_beskeder_antal";
Avatar billede busschou Praktikant
31. marts 2005 - 10:00 #30
altså for hvis den stadig går i uendelig løkke så må det jo betyde at if sætningen godkendes ..hvilket vil sige at variablen er forskellig fra nul...hvilket ikke burde være tilfældet hvis der ikke er nogen poster
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 10:01 #31
så sker der ingenting
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 10:03 #32
altså jeg fprstå ikke hvad du skriver men databasen er ikke tom der er beskeder i men ikke for denne her bruger
Avatar billede busschou Praktikant
31. marts 2005 - 10:06 #33
den står og summer og kommer aldrig ned til der hvor du laver en <hr> og din form mm
Ergo hænger den i din while løkke
Men den printer heller ikke noget!
Ergo må der være noget galt med betingelsen
----------
Ja problemet opstår når en bruger ikke har nogen beskeder - altså når variablen $hent_beskeder er tom... ikke sandt? eller tager jeg fejl?
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 10:08 #34
jeg har jo ikke forstand på php så kan ikke sige det, men den lille smule forstand på php jeg synes jeg det lyder meget rigtigt
Avatar billede busschou Praktikant
31. marts 2005 - 10:11 #35
prøv lige oven over din if hvis du stadig har den...ellers over din while at skrive
$visb = mysql_fetch_array($hent_beskeder) or die(mysql_error())
og se om den siger noget
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 10:12 #36
altså ?

$visb = mysql_fetch_array($hent_beskeder) or die(mysql_error())
if($hent_beskeder_antal != 0){
Avatar billede busschou Praktikant
31. marts 2005 - 10:13 #37
ja
$visb = mysql_fetch_array($hent_beskeder) or die(mysql_error());
if($hent_beskeder_antal != 0){
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 10:15 #38
der sker stadig ikke nogen ændring
Avatar billede busschou Praktikant
31. marts 2005 - 10:17 #39
det var da kattens
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 10:17 #40
ja
Avatar billede busschou Praktikant
31. marts 2005 - 10:20 #41
ok jeg er ik typen som giver op ;o)
prøv rette:
------------------
if($hent_beskeder_antal != 0){
  print"<br>Hent beskeder er forskellig fra nul <br>";
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 10:23 #42
man kan stadig ikke se ændringer

koden ser nu sådan her ud

<?
session_start();
if (session_is_registered("brugernavn") && session_is_registered("kodeord") && session_is_registered("logintid")) {

?>
<?
include "mysql/mysql.php";
if($_GET[id] == "") {
print "Du mangler et id!";
}else{

$hent_bruger = mysql_query("SELECT * FROM brugere WHERE id = '$_GET[id]'") or die(mysql_error());
while($vis = mysql_fetch_array($hent_bruger)) {
?>

Brugernavn: <? echo $vis[brugernavn]; ?><br>
Navn: <? echo $vis[navn]; ?><br>
Email: <a href="mailto:<? echo $vis[email]; ?>"><? echo $vis[email]; ?></a><br>
Hjemmeside: <a href="<? echo $vis[hjemmeside]; ?>"><? echo $vis[hjemmeside]; ?></a><br>
Fritekst: <br><? echo $vis[fritekst]; ?><br>



<bR><br>
<b> <? echo $vis[brugernavn]; ?>´s gæstebog!</b>
<br>
<?
}
}
if($_GET['mode'] == "slet" AND !empty($_GET['id'])) {
mysql_query(sprintf("DELETE FROM profil_gb WHERE id = %d",$_GET['id'])) or die(mysql_error());
print "Indlæget er nu slettet!";
}





/* Antallet af poster vi ønsker vist på hver side */
$pr_side = 10;

/* Vi tæller antallet af poster i tabellen husk at ændre ‘table’ til dit eget tabelnavn */
$antal = mysql_result(mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer=$_GET[id]"),0) or die(mysql_error());

/* Hvis visfra-variablen ikke findes i URL-feltet og den ikke er et nummer og den er større end antallet i databasen, så sættes den til 0, ellers sættes den til værdien fra URL feltet */
$vis_fra = (isset($_GET["visfra"]) && is_numeric($_GET["visfra"]) && $_GET["visfra"] < $antal) ? $_GET["visfra"] : 0;

/*tæl antallet af beskeder der kan hentes */
$hent_beskeder_antal = mysql_result(mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side" ),0) or die(mysql_error());

echo "$hent_beskeder_antal";

/* Vi laver et database udtræk med limit, så den kun hiver det rigtige antal ud fra tabellen, husk at ændre ‘table’ til dit eget tabelnavn */
$hent_beskeder = mysql_query("SELECT * FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side") or die(mysql_error());
/* Vi kører en while og udskriver data, det jeg har sat på er blot et eksempel */

$visb = mysql_fetch_array($hent_beskeder) or die(mysql_error());
if($hent_beskeder_antal != 0){
  print"<br>Hent beskeder er forskellig fra nul <br>";
while($visb = mysql_fetch_array($hent_beskeder)) {

print "Brugernavn: ";
print "$visb[brugernavn]";

print "  -  ";

print "Dato: ";
print "$visb[dato]";

print "  -  ";

if($visb['brugernavn'] == $_SESSION['brugernavn'])  {
print "<a href='?mode=slet&id=$visb[id]'>Slet indlæg</a><br>";
}

print "<br>Tekst: ";
print "$visb[tekst]<br>";

print "<br>";
?>
<?
}
}
?>

<?

echo "<hr />";

/* Der undersøges om der skal udskrives et ”forrige side”-link, er dette tilfældet udskrives linket */
if ($vis_fra > 1) {
$back= $vis_fra - $pr_side;
echo "<a href='$_SERVER[PHP_SELF]?id=$_GET[id]&visfra=$back'>Forrige</a> ";
}
$page = 1;

/* Alle siderne udskrives så man med et klik kan få resultaterne fra fx 90-100 */
for ($start = 1; $antal > $start; $start = $start + $pr_side) {
if($vis_fra != $page * $pr_side - $pr_side) {
echo "<a href='$_SERVER[PHP_SELF]?id=$_GET[id]&visfra=$start'>$page</a> ";
} else {
echo $page." ";
}
$page++;
}

/* Der undersøges om der skal udskrives et ”næste side”-link, er dette tilfældet udskrives linket */
if ($vis_fra < $antal - $pr_side) {
$next = $vis_fra + $pr_side;
echo " <a href='$_SERVER[PHP_SELF]?id=$_GET[id]&visfra=$next'>Næste</a>";
}
?>
<?
if($_POST[mode] == "skriv") {
if($_POST[tekst] != "") {
if($_GET[id] != "$_SESSION[brugernavn]") {

$dato = date('h:i:s');
mysql_query("INSERT INTO profil_gb (ejer, brugernavn, tekst, dato) VALUES ('$_GET[id]', '$_SESSION[brugernavn]', '$_POST[tekst]', '$dato')")or die(mysql_error());
print "<script language=\"javascript\">parent.location.replace('profil.php?id=$_GET[id]');</script>";
}
}
}

?>
<form action ="profil.php?id=<? echo $_GET[id]; ?>" method="POST">
<input type="hidden" name="mode" value="skriv">

<textarea name="tekst" rows="8" cols="30"></textarea><br>
<input type="submit" name="submit" value="Skriv">
</form>


<?
}else{
print "Du er ikke logget ind!";
}
?>
Avatar billede busschou Praktikant
31. marts 2005 - 10:25 #43
ok prøv slette linjen
$visb = mysql_fetch_array($hent_beskeder) or die(mysql_error());
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 10:26 #44
det er desværre stadig det samme
Avatar billede busschou Praktikant
31. marts 2005 - 10:28 #45
ok
Avatar billede busschou Praktikant
31. marts 2005 - 10:28 #46
a ha... men den står ikke og "summer/venter" mere
Avatar billede busschou Praktikant
31. marts 2005 - 10:29 #47
jo gør den sku... så må det være oven over... hmm tænke tænke
Avatar billede busschou Praktikant
31. marts 2005 - 10:31 #48
prøv rette
echo "$hent_beskeder_antal";
til
print "Så langt så godt";
Hvis den så udskriver det, ja så er den da så langt i koden. Hvis ikke - ja så sker fejlen højre oppe end jeg troede
Avatar billede busschou Praktikant
31. marts 2005 - 10:34 #49
prøv rette til følgende:
---------
print "1<br>";
/* Antallet af poster vi ønsker vist på hver side */
$pr_side = 10;
print "2<br>";
/* Vi tæller antallet af poster i tabellen husk at ændre ‘table’ til dit eget tabelnavn */
$antal = mysql_result(mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer=$_GET[id]"),0) or die(mysql_error());
print "3<br>";
/* Hvis visfra-variablen ikke findes i URL-feltet og den ikke er et nummer og den er større end antallet i databasen, så sættes den til 0, ellers sættes den til værdien fra URL feltet */
$vis_fra = (isset($_GET["visfra"]) && is_numeric($_GET["visfra"]) && $_GET["visfra"] < $antal) ? $_GET["visfra"] : 0;
print "4<br>";
/*tæl antallet af beskeder der kan hentes */
$hent_beskeder_antal = mysql_result(mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side" ),0) or die(mysql_error());
Avatar billede busschou Praktikant
31. marts 2005 - 10:34 #50
for så må den da vist fejle i en af de linjer
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 10:35 #51
den skriver ikke noget som helst
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 10:36 #52
nu skriver
1
2
Avatar billede busschou Praktikant
31. marts 2005 - 10:37 #53
godt nu ved vi hvor det går galt
det går galt i denne
$vis_fra = (isset($_GET["visfra"]) && is_numeric($_GET["visfra"]) && $_GET["visfra"] < $antal) ? $_GET["visfra"] : 0;
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 10:38 #54
okay
Avatar billede busschou Praktikant
31. marts 2005 - 10:39 #55
prøv under
print "3<br>";
skrive
print "visfra er $_GET["visfra"] <br>";
print "antal er $antal<br>";
Avatar billede busschou Praktikant
31. marts 2005 - 10:41 #56
jeg løg.... sorry...min fejl!
Det er selvfølgelig denne der fejler da den ikke når at skrive tre.. undskyld:
$antal = mysql_result(mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer=$_GET[id]"),0) or die(mysql_error());
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 10:42 #57
Parse error: parse error, unexpected '\"', expecting T_STRING or T_VARIABLE or T_NUM_STRING in /usr/export/www/hosting/4boys/test/profil.php on line 201

linje 201
print "visfra er $_GET["visfra"] <br>";
Avatar billede busschou Praktikant
31. marts 2005 - 10:43 #58
det er garanteret pga gåse øjnene
Men bare slet de to linjer
Det må være
$antal = mysql_result(mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer=$_GET[id]"),0) or die(mysql_error());
den er gal med
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 10:45 #59
slettet =)
Avatar billede busschou Praktikant
31. marts 2005 - 10:47 #60
gør det nogen forskel om der er plinger på altså om det er
$antal = mysql_result(mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer=$_GET[id]"),0) or die(mysql_error());
eller
$antal = mysql_result(mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer='$_GET[id]'"),0) or die(mysql_error());
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 10:50 #61
plinger på? vil du have jeg skal rette fra det ene til det andet?
Avatar billede busschou Praktikant
31. marts 2005 - 10:51 #62
ja prøv eventuelt...
Avatar billede busschou Praktikant
31. marts 2005 - 10:53 #63
evt kan det også forsøges at deles op
$temp = mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer=$_GET[id]")) or die(mysql_error());
print "2a";
$antal = mysql_result($temp,0);
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 10:53 #64
der sker desværre stadig ikke noget =(
Avatar billede busschou Praktikant
31. marts 2005 - 10:53 #65
fik en parantes for meget med
$temp = mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer=$_GET[id]") or die(mysql_error());
print "2a";
$antal = mysql_result($temp,0);
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 10:55 #66
nu kom
1
2
2a3
4
Avatar billede busschou Praktikant
31. marts 2005 - 10:57 #67
ok prøv indsætte flere prints ned til der hvor din while løkke starter
Avatar billede busschou Praktikant
31. marts 2005 - 10:58 #68
hvis du er i tvivl så post koden igen så sætter jeg dem lige ind så vi forhåbentlig kan spore det
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 11:00 #69
<?
session_start();
if (session_is_registered("brugernavn") && session_is_registered("kodeord") && session_is_registered("logintid")) {

?>
<?
include "mysql/mysql.php";
if($_GET[id] == "") {
print "Du mangler et id!";
}else{

$hent_bruger = mysql_query("SELECT * FROM brugere WHERE id = '$_GET[id]'") or die(mysql_error());
while($vis = mysql_fetch_array($hent_bruger)) {
?>

Brugernavn: <? echo $vis[brugernavn]; ?><br>
Navn: <? echo $vis[navn]; ?><br>
Email: <a href="mailto:<? echo $vis[email]; ?>"><? echo $vis[email]; ?></a><br>
Hjemmeside: <a href="<? echo $vis[hjemmeside]; ?>"><? echo $vis[hjemmeside]; ?></a><br>
Fritekst: <br><? echo $vis[fritekst]; ?><br>



<bR><br>
<b> <? echo $vis[brugernavn]; ?>´s gæstebog!</b>
<br>
<?
}
}
if($_GET['mode'] == "slet" AND !empty($_GET['id'])) {
mysql_query(sprintf("DELETE FROM profil_gb WHERE id = %d",$_GET['id'])) or die(mysql_error());
print "Indlæget er nu slettet!";
}




print "1<br>";
/* Antallet af poster vi ønsker vist på hver side */
$pr_side = 10;
print "2<br>";
/* Vi tæller antallet af poster i tabellen husk at ændre ‘table’ til dit eget tabelnavn */
$temp = mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer=$_GET[id]") or die(mysql_error());
print "2a";
$antal = mysql_result($temp,0);
print "3<br>";

/* Hvis visfra-variablen ikke findes i URL-feltet og den ikke er et nummer og den er større end antallet i databasen, så sættes den til 0, ellers sættes den til værdien fra URL feltet */
$vis_fra = (isset($_GET["visfra"]) && is_numeric($_GET["visfra"]) && $_GET["visfra"] < $antal) ? $_GET["visfra"] : 0;
print "4<br>";
/*tæl antallet af beskeder der kan hentes */
$hent_beskeder_antal = mysql_result(mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side" ),0) or die(mysql_error());
print "Så langt så godt";


/* Vi laver et database udtræk med limit, så den kun hiver det rigtige antal ud fra tabellen, husk at ændre ‘table’ til dit eget tabelnavn */
$hent_beskeder = mysql_query("SELECT * FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side") or die(mysql_error());
/* Vi kører en while og udskriver data, det jeg har sat på er blot et eksempel */


if($hent_beskeder_antal != 0){
  print"<br>Hent beskeder er forskellig fra nul <br>";
while($visb = mysql_fetch_array($hent_beskeder)) {

print "Brugernavn: ";
print "$visb[brugernavn]";

print "  -  ";

print "Dato: ";
print "$visb[dato]";

print "  -  ";

if($visb['brugernavn'] == $_SESSION['brugernavn'])  {
print "<a href='?mode=slet&id=$visb[id]'>Slet indlæg</a><br>";
}

print "<br>Tekst: ";
print "$visb[tekst]<br>";

print "<br>";
?>
<?
}
}
?>

<?

echo "<hr />";

/* Der undersøges om der skal udskrives et ”forrige side”-link, er dette tilfældet udskrives linket */
if ($vis_fra > 1) {
$back= $vis_fra - $pr_side;
echo "<a href='$_SERVER[PHP_SELF]?id=$_GET[id]&visfra=$back'>Forrige</a> ";
}
$page = 1;

/* Alle siderne udskrives så man med et klik kan få resultaterne fra fx 90-100 */
for ($start = 1; $antal > $start; $start = $start + $pr_side) {
if($vis_fra != $page * $pr_side - $pr_side) {
echo "<a href='$_SERVER[PHP_SELF]?id=$_GET[id]&visfra=$start'>$page</a> ";
} else {
echo $page." ";
}
$page++;
}

/* Der undersøges om der skal udskrives et ”næste side”-link, er dette tilfældet udskrives linket */
if ($vis_fra < $antal - $pr_side) {
$next = $vis_fra + $pr_side;
echo " <a href='$_SERVER[PHP_SELF]?id=$_GET[id]&visfra=$next'>Næste</a>";
}
?>
<?
if($_POST[mode] == "skriv") {
if($_POST[tekst] != "") {
if($_GET[id] != "$_SESSION[brugernavn]") {

$dato = date('h:i:s');
mysql_query("INSERT INTO profil_gb (ejer, brugernavn, tekst, dato) VALUES ('$_GET[id]', '$_SESSION[brugernavn]', '$_POST[tekst]', '$dato')")or die(mysql_error());
print "<script language=\"javascript\">parent.location.replace('profil.php?id=$_GET[id]');</script>";
}
}
}

?>
<form action ="profil.php?id=<? echo $_GET[id]; ?>" method="POST">
<input type="hidden" name="mode" value="skriv">

<textarea name="tekst" rows="8" cols="30"></textarea><br>
<input type="submit" name="submit" value="Skriv">
</form>


<?
}else{
print "Du er ikke logget ind!";
}
?>
Avatar billede busschou Praktikant
31. marts 2005 - 11:03 #70
ahh ok der var jo en print :o)
prøv rette
$hent_beskeder_antal = mysql_result(mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side" ),0) or die(mysql_error());
til:
-----------
$temp1 = mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side" ) or die(mysql_error());
$hent_beskeder_antal = mysql_result($temp1,0);
Avatar billede busschou Praktikant
31. marts 2005 - 11:04 #71
og det kan så godt være den skal være uden plinger også .. altså:
$temp1 = mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer = $_GET[id] ORDER BY id DESC limit $vis_fra, $pr_side" ) or die(mysql_error());
$hent_beskeder_antal = mysql_result($temp1,0);
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 11:06 #72
det virker ikke. stadig det samme desværre

hvis det er rigtigt det skal se sådan her ud

/* Hvis visfra-variablen ikke findes i URL-feltet og den ikke er et nummer og den er større end antallet i databasen, så sættes den til 0, ellers sættes den til værdien fra URL feltet */
$vis_fra = (isset($_GET["visfra"]) && is_numeric($_GET["visfra"]) && $_GET["visfra"] < $antal) ? $_GET["visfra"] : 0;
print "4<br>";
/*tæl antallet af beskeder der kan hentes */
$hent_beskeder_antal = mysql_result(mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side" ),0) or die(mysql_error());
print "Så langt så godt";


/* Vi laver et database udtræk med limit, så den kun hiver det rigtige antal ud fra tabellen, husk at ændre ‘table’ til dit eget tabelnavn */
$temp1 = mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side" ) or die(mysql_error());
$hent_beskeder_antal = mysql_result($temp1,0);
/* Vi kører en while og udskriver data, det jeg har sat på er blot et eksempel */


if($hent_beskeder_antal != 0){
  print"<br>Hent beskeder er forskellig fra nul <br>";
while($visb = mysql_fetch_array($hent_beskeder)) {
Avatar billede busschou Praktikant
31. marts 2005 - 11:08 #73
nej det var den forkerte :o)
Avatar billede busschou Praktikant
31. marts 2005 - 11:08 #74
Det var den lige under
print "4" som skulle rettes :o)
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 11:11 #75
det ser ud til at virke!
Avatar billede busschou Praktikant
31. marts 2005 - 11:12 #76
lækkert... langt om længe :o).
Håber det hele virker
I givet fald kan du jo sagtens slette alle de "prints" vi lavede så de ikke skrives ud nu det virker
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 11:12 #77
jo det virker :-)

mange tak for hjælpen!!

smid et svar!
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 11:13 #78
havde ikke set du havde svaret

jeg har slette prints og det virker
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 11:44 #79
det virker ikke alligevel øvøv

paging går galdt nu når man skifter side skriver den

Warning: mysql_result(): Unable to jump to row 0 on MySQL result index 15 in /usr/export/www/hosting/4boys/test/profil.php on line 209

linje 209
$hent_beskeder_antal = mysql_result($temp1,0);

koden



<html>

<head>
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>yourclan.com</title>
<!-- Rollover Script -->
<script type=text/javascript>
function init() {
if (!document.getElementById) return
var imgOriginSrc;
var imgTemp = new Array();
var imgarr = document.getElementsByTagName('img');
for (var i = 0; i < imgarr.length; i++) {
  if (imgarr[i].getAttribute('oversrc')) {
      imgTemp[i] = new Image();
      imgTemp[i].src = imgarr[i].getAttribute('oversrc');
      imgarr[i].onmouseover = function() {
          imgOriginSrc = this.getAttribute('src');
          this.setAttribute('src',this.getAttribute('oversrc'))
      }
      imgarr[i].onmouseout = function() {
          this.setAttribute('src',imgOriginSrc)
      }
  }
}
}
onload=init;
</SCRIPT>
<!-- Fade Script -->
<script language="JavaScript1.2">

//Gradual-Highlight image script- By Dynamic Drive
//For full source code and more DHTML scripts, visit  http://www.dynamicdrive.com
//This credit MUST stay intact for use

function high(which2){
theobject=which2
highlighting=setInterval("highlightit(theobject)",50)
}
function low(which2){
clearInterval(highlighting)
if (which2.style.MozOpacity)
which2.style.MozOpacity=0.3
else if (which2.filters)
which2.filters.alpha.opacity=30
}

function highlightit(cur2){
if (cur2.style.MozOpacity<1)
cur2.style.MozOpacity=parseFloat(cur2.style.MozOpacity)+0.1
else if (cur2.filters&&cur2.filters.alpha.opacity<100)
cur2.filters.alpha.opacity+=10
else if (window.highlighting)
clearInterval(highlighting)
}

</script>

<link rel="stylesheet" type="text/css" href="include/style.css">


</head>

<body topmargin="0">

<div align="center">
  <center>
  <table border="0" cellpadding="0" cellspacing="0" width="760">
    <tr>
      <td width="100%"><img border="0" src="images/top.gif" width="760" height="199"></td>

    </tr>
    <tr>
      <td width="100%">
      <a href="index.php">
      <img border="0" src="images/menu_home.gif" oversrc="images/rmenu_home.gif" width="224" height="25"></a><a href="download.php"><img border="0" src="images/menu_dl.gif" oversrc="images/rmenu_dl.gif" width="86" height="25"></a><a href="forum.php"><img border="0" src="images/menu_forums.gif" oversrc="images/rmenu_forums.gif" width="69" height="25"></a><a href="links.php"><img border="0" src="images/menu_links.gif" oversrc="images/rmenu_links.gif" width="59" height="25"></a><a href="members.php"><img border="0" src="images/menu_members.gif" oversrc="images/rmenu_members.gif" width="72" height="25"></a><a href="screenshots.php"><img border="0" src="images/menu_screenshots.gif" oversrc="images/rmenu_screenshots.gif" width="250" height="25">
     
      </a>
     
      </td>
    </tr>
    <tr>
      <td width="100%" style="border: 1 solid #9C9C9C" bgcolor="#FFFFFF">
        <table border="0" cellpadding="0" cellspacing="0" width="100%">
          <tr>
            <td width="180" valign="top">
              &nbsp;
              <div align="center">
                <table border="0" cellpadding="0" cellspacing="0" width="150">
                  <tr>
                    <td width="100%" background="images/bar_bg2.gif"><img border="0" src="images/index.1.gif" width="150" height="24">
                      <div style="margin-left:10px; margin-right:10px">

<?
include("brugermenu.php");
?>




                      </div>
                      <p><img border="0" src="images/index.2.gif" width="150" height="31"></td>
                  </tr>
                </table>
                <p>
                                <table border="0" cellpadding="0" cellspacing="0" width="150">
                  <tr>
                    <td width="100%" background="images/bar_bg2.gif"><img border="0" src="images/index.1.gif"                      width="150" height="24">
                      <div style="margin-left:10px; margin-right:10px">
                       


<?
include("include/menu.php");
?>

                    </div>
                      <p><img border="0" src="images/index.2.gif" width="150" height="31"></td>
                  </tr>
                </table>
                <p>
                                                <table border="0" cellpadding="0" cellspacing="0" width="150">
                  <tr>
                    <td width="100%" background="images/bar_bg2.gif"><img border="0" src="images/index.1.gif" width="150" height="24">
                      <div style="margin-left:10px; margin-right:10px">

<?
include("include/Affiliates.php");
?>



                    </div>
                      <p><img border="0" src="images/index.2.gif" width="150" height="31"></td>
                  </tr>
                </table>
              </div>
            </td>
            <td width="400" valign="top">
              &nbsp;
              <div align="center">
                <center>
                <table border="0" cellpadding="0" cellspacing="0" width="383" background="images/news_bg.gif">
                  <tr>
                    <td width="100%" background="images/news_bg.gif" colspan="3"><img border="0" src="images/news_top.gif" width="384" height="14"></td>
                  </tr><tr>
                    <td width="93" valign="top">
                     


                  </td>
                    <td width="271" valign="top">


<?
session_start();
if (session_is_registered("brugernavn") && session_is_registered("kodeord") && session_is_registered("logintid")) {

?>
<?
include "mysql/mysql.php";
if($_GET[id] == "") {
print "Du mangler et id!";
}else{

$hent_bruger = mysql_query("SELECT * FROM brugere WHERE id = '$_GET[id]'") or die(mysql_error());
while($vis = mysql_fetch_array($hent_bruger)) {
?>

Brugernavn: <? echo $vis[brugernavn]; ?><br>
Navn: <? echo $vis[navn]; ?><br>
Email: <a href="mailto:<? echo $vis[email]; ?>"><? echo $vis[email]; ?></a><br>
Hjemmeside: <a href="<? echo $vis[hjemmeside]; ?>"><? echo $vis[hjemmeside]; ?></a><br>
Fritekst: <br><? echo $vis[fritekst]; ?><br>



<bR><br>
<b> <? echo $vis[brugernavn]; ?>´s gæstebog!</b>
<br>
<?
}
}
if($_GET['mode'] == "slet" AND !empty($_GET['id'])) {
mysql_query(sprintf("DELETE FROM profil_gb WHERE id = %d",$_GET['id'])) or die(mysql_error());
print "Indlæget er nu slettet!";
}





/* Antallet af poster vi ønsker vist på hver side */
$pr_side = 10;

/* Vi tæller antallet af poster i tabellen husk at ændre ‘table’ til dit eget tabelnavn */
$temp = mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer=$_GET[id]") or die(mysql_error());

$antal = mysql_result($temp,0);


/* Hvis visfra-variablen ikke findes i URL-feltet og den ikke er et nummer og den er større end antallet i databasen, så sættes den til 0, ellers sættes den til værdien fra URL feltet */
$vis_fra = (isset($_GET["visfra"]) && is_numeric($_GET["visfra"]) && $_GET["visfra"] < $antal) ? $_GET["visfra"] : 0;

/*tæl antallet af beskeder der kan hentes */
$temp1 = mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side" ) or die(mysql_error());
$hent_beskeder_antal = mysql_result($temp1,0);



/* Vi laver et database udtræk med limit, så den kun hiver det rigtige antal ud fra tabellen, husk at ændre ‘table’ til dit eget tabelnavn */
$hent_beskeder = mysql_query("SELECT * FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side") or die(mysql_error());
/* Vi kører en while og udskriver data, det jeg har sat på er blot et eksempel */


if($hent_beskeder_antal != 0){

while($visb = mysql_fetch_array($hent_beskeder)) {

print "Brugernavn: ";
print "$visb[brugernavn]";

print "  -  ";

print "Dato: ";
print "$visb[dato]";

print "  -  ";

if($visb['brugernavn'] == $_SESSION['brugernavn'])  {
print "<a href='?mode=slet&id=$visb[id]'>Slet indlæg</a><br>";
}

print "<br>Tekst: ";
print "$visb[tekst]<br>";

print "<br>";
?>
<?
}
}
?>

<?

echo "<hr />";

/* Der undersøges om der skal udskrives et ”forrige side”-link, er dette tilfældet udskrives linket */
if ($vis_fra > 1) {
$back= $vis_fra - $pr_side;
echo "<a href='$_SERVER[PHP_SELF]?id=$_GET[id]&visfra=$back'>Forrige</a> ";
}
$page = 1;

/* Alle siderne udskrives så man med et klik kan få resultaterne fra fx 90-100 */
for ($start = 1; $antal > $start; $start = $start + $pr_side) {
if($vis_fra != $page * $pr_side - $pr_side) {
echo "<a href='$_SERVER[PHP_SELF]?id=$_GET[id]&visfra=$start'>$page</a> ";
} else {
echo $page." ";
}
$page++;
}

/* Der undersøges om der skal udskrives et ”næste side”-link, er dette tilfældet udskrives linket */
if ($vis_fra < $antal - $pr_side) {
$next = $vis_fra + $pr_side;
echo " <a href='$_SERVER[PHP_SELF]?id=$_GET[id]&visfra=$next'>Næste</a>";
}
?>
<?
if($_POST[mode] == "skriv") {
if($_POST[tekst] != "") {
if($_GET[id] != "$_SESSION[brugernavn]") {

$dato = date('h:i:s');
mysql_query("INSERT INTO profil_gb (ejer, brugernavn, tekst, dato) VALUES ('$_GET[id]', '$_SESSION[brugernavn]', '$_POST[tekst]', '$dato')")or die(mysql_error());
print "<script language=\"javascript\">parent.location.replace('profil.php?id=$_GET[id]');</script>";
}
}
}

?>
<form action ="profil.php?id=<? echo $_GET[id]; ?>" method="POST">
<input type="hidden" name="mode" value="skriv">

<textarea name="tekst" rows="8" cols="30"></textarea><br>
<input type="submit" name="submit" value="Skriv">
</form>


<?
}else{
print "Du er ikke logget ind!";
}
?>

                    </td>
  </center>

                  <td width="19" valign="top"><img border="0" src="images/news_right.gif" width="18" height="110"></td>
                </tr>
  <center>
  <tr>
    <td width="100%" colspan="3"><img border="0" src="images/news_bot.gif" width="382" height="30"></td>
  </tr>
                </table>
                </center>
              </div>
            </td>
            <td width="180" valign="top">              &nbsp;              <div align="center">
                <center>
                <table border="0" cellpadding="0" cellspacing="0" width="150">
                  <tr>
                    <td width="100%" background="images/bar_bg.gif"><img border="0" src="images/bar_top.gif" width="150" height="24">
                      <div style="margin-left:10px; margin-right:10px">




<?
include("include/afstemning.php");
?>


                   
                      </div>
                      <p><img border="0" src="images/bar_bot.gif" width="150" height="31"></td>
                  </tr>
                </table>
                <p>
                              <div align="center">
                <table border="0" cellpadding="0" cellspacing="0" width="150">
                  <tr>
                    <td width="100%" background="images/bar_bg.gif"><img border="0" src="images/bar_top.gif" width="150" height="24">
                      <div style="margin-left:10px; margin-right:10px">


<?
include("include/nyestebruger.php");
?>

                      </div>
                      <p>&nbsp;</p>
                      <p><img border="0" src="images/bar_bot.gif" width="150" height="31"></td>
                  </tr>
                </table>
              </div><p>
                                            <div align="center">
                <table border="0" cellpadding="0" cellspacing="0" width="150">
                  <tr>
                    <td width="100%" background="images/bar_bg.gif"><img border="0" src="images/bar_top.gif" width="150" height="24">
                      <div style="margin-left:10px; margin-right:10px">

<?
include("include/dltop5.php");
?>


                      </div>
                      <p><img border="0" src="images/bar_bot.gif" width="150" height="31"></td>
                  </tr>
                </table>
              </div><p>
                </center>
              </div></td>
          </tr>
        </table>
        <p>&nbsp;</p>
      </td>
    </tr>
  </table>
  </center>
</div>

</body>

</html>
Avatar billede busschou Praktikant
31. marts 2005 - 13:39 #80
har først set din kommentar nu...ser lige på det
Avatar billede busschou Praktikant
31. marts 2005 - 13:48 #81
prøv at udmarkere det vi lavede med den der $hent_beskeder_antal
på følgende måde:
-------------
/* Antallet af poster vi ønsker vist på hver side */
$pr_side = 10;

/* Vi tæller antallet af poster i tabellen husk at ændre ‘table’ til dit eget tabelnavn */
$temp = mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer=$_GET[id]") or die(mysql_error());

$antal = mysql_result($temp,0);

/* Hvis visfra-variablen ikke findes i URL-feltet og den ikke er et nummer og den er større end antallet i databasen, så sættes den til 0, ellers sættes den til værdien fra URL feltet */
$vis_fra = (isset($_GET["visfra"]) && is_numeric($_GET["visfra"]) && $_GET["visfra"] < $antal) ? $_GET["visfra"] : 0;

/*tæl antallet af beskeder der kan hentes */
/*$temp1 = mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side" ) or die(mysql_error());*/
/*$hent_beskeder_antal = mysql_result($temp1,0);*/

/* Vi laver et database udtræk med limit, så den kun hiver det rigtige antal ud fra tabellen, husk at ændre ‘table’ til dit eget tabelnavn */
$hent_beskeder = mysql_query("SELECT * FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side") or die(mysql_error());
/* Vi kører en while og udskriver data, det jeg har sat på er blot et eksempel */

/*if($hent_beskeder_antal != 0){*/
------------------------
Og så også den sidste krøl parantes } som slutter if sætningen
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 13:54 #82
nu viser den slet ingen indlæg
Avatar billede busschou Praktikant
31. marts 2005 - 14:05 #83
ok så går det ikke
Prøv at indmarkere det igen (og husk krølle parantesen til sidst;o)
Og så tilføje et par udskrifter af sql linjerne:
-------------------------
* Antallet af poster vi ønsker vist på hver side */
$pr_side = 10;

/* Vi tæller antallet af poster i tabellen husk at ændre ‘table’ til dit eget tabelnavn */
$temp = mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer=$_GET[id]") or die(mysql_error());
print "temp er $temp <br>";
$antal = mysql_result($temp,0);
print "antal er $antal <br>";
/* Hvis visfra-variablen ikke findes i URL-feltet og den ikke er et nummer og den er større end antallet i databasen, så sættes den til 0, ellers sættes den til værdien fra URL feltet */
$vis_fra = (isset($_GET["visfra"]) && is_numeric($_GET["visfra"]) && $_GET["visfra"] < $antal) ? $_GET["visfra"] : 0;
print "vis_fra er $vis_fra <br>";
/*tæl antallet af beskeder der kan hentes */
$temp1 = mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side" ) or die(mysql_error());
print "temp1 er $temp1 <br>";
$hent_beskeder_antal = mysql_result($temp1,0);
print "hent_beskeder_antal er $hent_beskeder_antal <br>";
/* Vi laver et database udtræk med limit, så den kun hiver det rigtige antal ud fra tabellen, husk at ændre ‘table’ til dit eget tabelnavn */
$hent_beskeder = mysql_query("SELECT * FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side") or die(mysql_error());
print "hent_beskeder er $hent_beskeder <br>";
/* Vi kører en while og udskriver data, det jeg har sat på er blot et eksempel */

if($hent_beskeder_antal != 0){
Avatar billede busschou Praktikant
31. marts 2005 - 14:06 #84
så må vi kunne debugge ud fra det forhåbentlig
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 14:09 #85
temp er Resource id #14
antal er 33
vis_fra er 0
temp1 er Resource id #15
hent_beskeder_antal er 33
hent_beskeder er Resource id #16
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 14:11 #86
og når jeg trykker næste side

temp er Resource id #14
antal er 33
vis_fra er 10
temp1 er Resource id #15

Warning: mysql_result(): Unable to jump to row 0 on MySQL result index 15 in /usr/export/www/hosting/4boys/test/profil.php on line 209
hent_beskeder_antal er
hent_beskeder er Resource id #16
Avatar billede busschou Praktikant
31. marts 2005 - 14:16 #87
ok prøv så følgende
-------------
/* Antallet af poster vi ønsker vist på hver side */
$pr_side = 10;

/* Vi tæller antallet af poster i tabellen husk at ændre ‘table’ til dit eget tabelnavn */
$temp = mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer=$_GET[id]") or die(mysql_error());

$antal = mysql_result($temp,0);

/* Hvis visfra-variablen ikke findes i URL-feltet og den ikke er et nummer og den er større end antallet i databasen, så sættes den til 0, ellers sættes den til værdien fra URL feltet */
$vis_fra = (isset($_GET["visfra"]) && is_numeric($_GET["visfra"]) && $_GET["visfra"] < $antal) ? $_GET["visfra"] : 0;

/*tæl antallet af beskeder der kan hentes */
/*$temp1 = mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side" ) or die(mysql_error());*/
/*$hent_beskeder_antal = mysql_result($temp1,0);*/

/* Vi laver et database udtræk med limit, så den kun hiver det rigtige antal ud fra tabellen, husk at ændre ‘table’ til dit eget tabelnavn */
$hent_beskeder = mysql_query("SELECT * FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side") or die(mysql_error());
/* Vi kører en while og udskriver data, det jeg har sat på er blot et eksempel */

if($antal != 0){
------------------------
Avatar billede busschou Praktikant
31. marts 2005 - 14:17 #88
selvfølgelig gerne stadig med alle de udskrifter om muligt
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 14:19 #89
kan det passe koden ska se sådan her ud for hvis ja så kn man ikke se noget



/* Antallet af poster vi ønsker vist på hver side */
$pr_side = 10;

/* Vi tæller antallet af poster i tabellen husk at ændre ‘table’ til dit eget tabelnavn */
$temp = mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer=$_GET[id]") or die(mysql_error());

$antal = mysql_result($temp,0);

/* Hvis visfra-variablen ikke findes i URL-feltet og den ikke er et nummer og den er større end antallet i databasen, så sættes den til 0, ellers sættes den til værdien fra URL feltet */
$vis_fra = (isset($_GET["visfra"]) && is_numeric($_GET["visfra"]) && $_GET["visfra"] < $antal) ? $_GET["visfra"] : 0;

/*tæl antallet af beskeder der kan hentes */
/*$temp1 = mysql_query("SELECT COUNT(*) FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side" ) or die(mysql_error());*/
/*$hent_beskeder_antal = mysql_result($temp1,0);*/

/* Vi laver et database udtræk med limit, så den kun hiver det rigtige antal ud fra tabellen, husk at ændre ‘table’ til dit eget tabelnavn */
$hent_beskeder = mysql_query("SELECT * FROM profil_gb WHERE ejer = '$_GET[id]' ORDER BY id DESC limit $vis_fra, $pr_side") or die(mysql_error());
/* Vi kører en while og udskriver data, det jeg har sat på er blot et eksempel */

if($antal != 0){
if($hent_beskeder_antal != 0){

while($visb = mysql_fetch_array($hent_beskeder)) {

print "Brugernavn: ";
print "$visb[brugernavn]";

print "  -  ";

print "Dato: ";
print "$visb[dato]";

print "  -  ";

if($visb['brugernavn'] == $_SESSION['brugernavn'])  {
print "<a href='?mode=slet&id=$visb[id]'>Slet indlæg</a><br>";
}

print "<br>Tekst: ";
print "$visb[tekst]<br>";

print "<br>";
?>
<?
}
}
}
?>
Avatar billede busschou Praktikant
31. marts 2005 - 14:21 #90
min ide var at stryge denne her helt
if($hent_beskeder_antal != 0){
til fordel for denne her
if($antal != 0){
Avatar billede busschou Praktikant
31. marts 2005 - 14:21 #91
så i det du har så bare slet
if($hent_beskeder_antal != 0){
samt en slut parantes
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 14:22 #92
jamen nu virker det manke tak
Avatar billede busschou Praktikant
31. marts 2005 - 14:23 #93
det var så lidt... en stor omgang..puhha hehe
Avatar billede grise_bassen Nybegynder
31. marts 2005 - 14:24 #94
ja det var..
mange tak for hjælpen,
synes det var en stort af dig at hjælpe.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester