11. september 2002 - 21:43
Der er
27 kommentarer
update i mysql
Hej jeg har en bruger system og jeg kan ikke få min update funktion til at virke! Der kommer ingen fejl eller noget men i min mysql er intet ændret! HJÆLP!!
Annonceindlæg fra Computerworld it-jobbank
11. september 2002 - 21:45
#1
i kan se scriptet som skal lave min update her: <? // Opdater oplysningerne if ($update) { include ("config.php"); mysql_connect($host,$user,$pass); mysql_select_db($db); mysql_query("UPDATE community SET navn='$navn', password='$password', email='$email', alder='$alder', hjemmeside='$hjemmeside' WHERE id='$id'")or die(mysql_error()); echo "<font color=\"darkgreen\">Dine oplysninger er blevet opdateret"; } ?>
11. september 2002 - 21:52
#2
id er som regel et tal, så der skal ikke ' tegn om tallet 25 er noget ganske andet end strengen "25" mysql_query("UPDATE community SET navn='$navn', password='$password', email='$email', alder='$alder', hjemmeside='$hjemmeside' WHERE id=$id")or die(mysql_error()); mvh JakobA
11. september 2002 - 21:53
#3
hvad skriver den når du updater??
11. september 2002 - 21:55
#4
det virker ikke!
11. september 2002 - 21:55
#5
<? session_start(); ?> <html> <head> <title>Brugersystem</title> <meta name="Generator" content="Stone's WebWriter 3.5"> </head> <body> <? // Tjek om brugeren er logget ind if ($s_navn && $s_password) { ?> <? include ("config.php"); mysql_connect($host,$user,$pass); mysql_select_db($db); $query = mysql_query("SELECT * FROM community WHERE navn='$s_navn' AND password='$s_password'")or die(mysql_error()); while($r = mysql_fetch_array($query)) { $id = $r["id"]; $navn = $r["navn"]; $password = $r["password"]; $email = $r["email"]; $alder = $r["alder"]; $hjemmeside = $r["hjemmeside"]; } ?> <form method="post" action="ret.php"> <input type="hidden" name="id" value="$id"> <table width="300"> <tr> <td width="300" colspan="2"><b>Ret oplysninger</b></td> </tr><tr> <td width="150">Navn:</td> <td width="150"><? echo "$navn" ?></td> </tr><tr> <td width="150">Kodeord:</td> <td width="150"><input type="text" name="kodeord" value="<? echo "$password"; ?>" style="width: 152px"></td> </tr><tr> <td width="150">Email:</td> <td width="150"><input type="text" name="email" value="<? echo "$email"; ?>" style="width: 152px"></td> </tr><tr> <td width="150">Alder:</td> <td width="150"><input type="text" name="alder" value="<? echo "$alder"; ?>" style="width: 152px"></td> </tr><tr> <td width="150">Hjemmeside:</td> <td width="150"><input type="text" name="hjemmeside" value="<? echo "$hjemmeside"; ?>" style="width: 152px"></td> </tr><tr> <td width="300" colspan="2" align="right"><input type="submit" name="update" value="Udfør"></td> </tr> </table> </form> <? // Opdater oplysningerne if ($update) { include ("config.php"); mysql_connect($host,$user,$pass); mysql_select_db($db); mysql_query("UPDATE community SET navn='$navn', password='$password', email='$email', alder='$alder', hjemmeside='$hjemmeside' WHERE id=$id")or die(mysql_error()); echo "<font color=\"darkgreen\">Dine oplysninger er blevet opdateret"; } ?> <? // Hvis brugeren ikke er logget ind } else { ?> <center><font color="red">Kun for medlemmer</font></center> <? } ?> </body> </html> her er hele filen! den skriver bare Dine oplysninger er blevet opdateret som jeg har skrevet den skal sige!
11. september 2002 - 21:58
#6
kan i nu hvor i har hele min ret.php fil!
11. september 2002 - 21:59
#7
prøv at gøre sådan her i din form: <form method="post" action="ret.php?id=<? echo $id; ?>"> Og så slet feltet: <input type="hidden" name="id" value="$id">
11. september 2002 - 22:00
#8
når jeg lige kigger efter har du glemt <? echo ;?> i dit hidden felt!! Du har: <input type="hidden" name="id" value="$id"> Det skal være: <input type="hidden" name="id" value="<? echo $id; ?>">
11. september 2002 - 22:00
#9
og når mysql'en ikke får et ID kan den ikke update!!
11. september 2002 - 22:03
#10
ok!
11. september 2002 - 22:05
#11
den opdatere ikke oplysningerne den opdatere siden igen og den er som før!
11. september 2002 - 22:07
#12
min fil nu sådan her ud: <? session_start(); ?> <html> <head> <title>Brugersystem</title> <meta name="Generator" content="Stone's WebWriter 3.5"> </head> <body> <? // Tjek om brugeren er logget ind if ($s_navn && $s_password) { ?> <? include ("config.php"); mysql_connect($host,$user,$pass); mysql_select_db($db); $query = mysql_query("SELECT * FROM community WHERE navn='$s_navn' AND password='$s_password'")or die(mysql_error()); while($r = mysql_fetch_array($query)) { $id = $r["id"]; $navn = $r["navn"]; $password = $r["password"]; $email = $r["email"]; $alder = $r["alder"]; $hjemmeside = $r["hjemmeside"]; } ?> <form method="post" action="ret.php?id=<? echo $id; ?>"> <input type="hidden" name="id" value="<? echo $id; ?>"> <table width="300"> <tr> <td width="300" colspan="2"><b>Ret oplysninger</b></td> </tr><tr> <td width="150">Navn:</td> <td width="150"><? echo "$navn" ?></td> </tr><tr> <td width="150">Kodeord:</td> <td width="150"><input type="text" name="kodeord" value="<? echo "$password"; ?>" style="width: 152px"></td> </tr><tr> <td width="150">Email:</td> <td width="150"><input type="text" name="email" value="<? echo "$email"; ?>" style="width: 152px"></td> </tr><tr> <td width="150">Alder:</td> <td width="150"><input type="text" name="alder" value="<? echo "$alder"; ?>" style="width: 152px"></td> </tr><tr> <td width="150">Hjemmeside:</td> <td width="150"><input type="text" name="hjemmeside" value="<? echo "$hjemmeside"; ?>" style="width: 152px"></td> </tr><tr> <td width="300" colspan="2" align="right"><input type="submit" name="update" value="Udfør"></td> </tr> </table> </form> <? // Opdater oplysningerne if ($update) { include ("config.php"); mysql_connect($host,$user,$pass); mysql_select_db($db); mysql_query("UPDATE community SET navn='$navn', password='$password', email='$email', alder='$alder', hjemmeside='$hjemmeside' WHERE id=$id")or die(mysql_error()); echo "<font color=\"darkgreen\">Dine oplysninger er blevet opdateret"; } ?> <? // Hvis brugeren ikke er logget ind } else { ?> <center><font color="red">Kun for medlemmer</font></center> <? } ?> </body> </html>
11. september 2002 - 22:08
#13
prøv med denne: if ($update) { // include ("config.php"); // 3 overflødige linier // mysql_connect($host,$user,$pass); // for det gjorde du oppe i toppen // mysql_select_db($db); $res = mysql_query(" SELECT COUNT(*) FROM community WHERE id=$id " ) or die( mysql_error() ); $findes = mysql_result( $res, 0, 0 ) > 0 ); if ( $findes == 1 ) { mysql_query(" UPDATE community SET navn='$navn', password='$password', email='$email', alder='$alder', hjemmeside='$hjemmeside' WHERE id=$id ")or die(mysql_error()); } else if ( $findes == 0 ) { echo "der findes ingen bruger med id == " .$id ."<br>"; } echo "<font color=\"darkgreen\">Dine oplysninger er blevet opdateret"; }
11. september 2002 - 22:10
#14
får fejl i linje 66
11. september 2002 - 22:10
#15
Ups. fjern '> 0 )' bagerst i linien $findes = mysql_result( $res, 0, 0 );
11. september 2002 - 22:13
#16
virker stadig ikke!
11. september 2002 - 22:13
#17
11. september 2002 - 22:15
#18
til "virker stadig ikke!" kan jeg ikke sige andet end NÅ! men hvis du fortæller hvilken fejl der kommer i hvilken line og hvad der står i den linie, så kan jeg kikke og måske hjælpe.
11. september 2002 - 22:16
#19
jamen den skriver bare Dine oplysninger er blevet opdateret
11. september 2002 - 22:28
#20
Jep, og sådan et link, det er RIGTIG noget der hjælper. Ha Ha, det fik jeg den. det du gør foroven på siden, det er jo at du henter det der står i databasen ind i variablene $navn, $email, osv.... når du så opdaterer bagefter er det de værdier der bliver sat ind igen. Dvs det samme som der stod før :( <? session_start(); ?> <html> <head> <title>Brugersystem</title> <meta name="Generator" content="Stone's WebWriter 3.5"> </head> <body> <? // Tjek om brugeren er logget ind if ($s_navn && $s_password) { ?> <? include ("config.php"); // 3 overflødige linier mysql_connect($host,$user,$pass); // for det gjorde du oppe i toppen mysql_select_db($db); if ($update) { // START med at opdatere hvis der skal opdateres $res = mysql_query(" SELECT COUNT(*) FROM community WHERE id=$id " ) or die( mysql_error() ); $findes = mysql_result( $res, 0, 0 ) > 0 ); if ( $findes == 1 ) { mysql_query(" UPDATE community SET navn='$navn', password='$password', email='$email', alder='$alder', hjemmeside='$hjemmeside' WHERE id=$id ")or die(mysql_error()); } else if ( $findes == 0 ) { echo "der findes ingen bruger med id == " .$id ."<br>"; } echo "<font color=\"darkgreen\">Dine oplysninger er blevet opdateret"; } $query = mysql_query("SELECT * FROM community WHERE navn='$s_navn' AND password='$s_password'")or die(mysql_error()); while($r = mysql_fetch_array($query)) { $id = $r["id"]; $navn = $r["navn"]; $password = $r["password"]; $email = $r["email"]; $alder = $r["alder"]; $hjemmeside = $r["hjemmeside"]; } ?> <form method="post" action="ret.php?id=<? echo $id; ?>"> <input type="hidden" name="id" value="<? echo $id; ?>"> <table width="300"> <tr> <td width="300" colspan="2"><b>Ret oplysninger</b></td> </tr><tr> <td width="150">Navn:</td> <td width="150"><? echo "$navn" ?></td> </tr><tr> <td width="150">Kodeord:</td> <td width="150"><input type="text" name="kodeord" value="<? echo "$password"; ?>" style="width: 152px"></td> </tr><tr> <td width="150">Email:</td> <td width="150"><input type="text" name="email" value="<? echo "$email"; ?>" style="width: 152px"></td> </tr><tr> <td width="150">Alder:</td> <td width="150"><input type="text" name="alder" value="<? echo "$alder"; ?>" style="width: 152px"></td> </tr><tr> <td width="150">Hjemmeside:</td> <td width="150"><input type="text" name="hjemmeside" value="<? echo "$hjemmeside"; ?>" style="width: 152px"></td> </tr><tr> <td width="300" colspan="2" align="right"><input type="submit" name="update" value="Udfør"></td> </tr> </table> </form> <? // Hvis brugeren ikke er logget ind } else { ?> <center><font color="red">Kun for medlemmer</font></center> <? } ?> </body> </html> mvh JakobA
11. september 2002 - 22:29
#21
prøv lige den her: (ved ikke om det virker!!) <? session_start(); ?> <html> <head> <title>Brugersystem</title> <meta name="Generator" content="Stone's WebWriter 3.5"> </head> <body> <? // Tjek om brugeren er logget ind if ($s_navn && $s_password) { ?> <? include ("config.php"); mysql_connect($host,$user,$pass); mysql_select_db($db); $query = mysql_query("SELECT * FROM community WHERE navn='$s_navn' AND password='$s_password'")or die(mysql_error()); $r = mysql_fetch_array($query); $id = $r["id"]; $navn = $r["navn"]; $password = $r["password"]; $email = $r["email"]; $alder = $r["alder"]; $hjemmeside = $r["hjemmeside"]; ?> <form method="post" action="ret.php?id=<? echo $id; ?>"> <input type="hidden" name="id" value="<? echo $id; ?>"> <table width="300"> <tr> <td width="300" colspan="2"><b>Ret oplysninger</b></td> </tr><tr> <td width="150">Navn:</td> <td width="150"><? echo "$navn" ?></td> </tr><tr> <td width="150">Kodeord:</td> <td width="150"><input type="text" name="kodeord" value="<? echo "$password"; ?>" style="width: 152px"></td> </tr><tr> <td width="150">Email:</td> <td width="150"><input type="text" name="email" value="<? echo "$email"; ?>" style="width: 152px"></td> </tr><tr> <td width="150">Alder:</td> <td width="150"><input type="text" name="alder" value="<? echo "$alder"; ?>" style="width: 152px"></td> </tr><tr> <td width="150">Hjemmeside:</td> <td width="150"><input type="text" name="hjemmeside" value="<? echo "$hjemmeside"; ?>" style="width: 152px"></td> </tr><tr> <td width="300" colspan="2" align="right"><input type="submit" name="update" value="Udfør"></td> </tr> </table> </form> <? // Opdater oplysningerne if ($update) { include ("config.php"); mysql_connect($host,$user,$pass); mysql_select_db($db); mysql_query("UPDATE community SET navn='$navn', password='$password', email='$email', alder='$alder', hjemmeside='$hjemmeside' WHERE id=$id")or die(mysql_error()); echo "<font color=\"darkgreen\">Dine oplysninger er blevet opdateret"; } ?> <? // Hvis brugeren ikke er logget ind } else { ?> <center><font color="red">Kun for medlemmer</font></center> <? } ?> </body> </html>
11. september 2002 - 22:30
#22
og igen fjerne ' > 0 )' den blev pasted ind igen :(
11. september 2002 - 22:35
#23
men du skal nok også fjerne navn = '$navn', i SET-listen. der er jo ikke noget felt der hedder navn i rette-formularen. mysql_query(" UPDATE community SET password='$password', email='$email', alder='$alder', hjemmeside='$hjemmeside' WHERE id=$id ")or die(mysql_error());
12. september 2002 - 11:35
#24
den bliver ved med bare at gå tilbage til det samme igen!
12. september 2002 - 18:00
#25
ingen som kan hjælpe!
12. september 2002 - 18:31
#26
Skal WHERE id=$id ikke være: WHERE id='$id' ???
06. august 2003 - 12:10
#27
jo... husk '' ved variabler
Vi tilbyder markedets bedste kurser inden for webudvikling