Sonymann Skrevet 29. april 2004 Del Skrevet 29. april 2004 (endret) Jeg føler meg litt dum og masete nå, men igjen har jeg problemer med databasen min. Denne gangen skal jeg redigere en linje i databasen min. (skriptet mitt kan dere se her: http://www.miniavisa.com?side=tabelledit) Men som dere kanskje ser, så får jeg ikke endret noe som helst. Jeg kommer rett tilbake til editsiden. Skriptet ser slik ut: <form action="<? echo $PHP_SELF ?>" method="post"> <? mysql_pconnect("localhost","*BRUKER","PASSORD"); //enter name and password mysql_select_db("DATABASE"); //select the database if(!$cmd) { $result = mysql_query("select * from tippeliga04"); //replace news with your table name while($r=mysql_fetch_array($result)) { $id=$r["id"]; $lag=$r["lag"]; $s=$r["s"]; $v=$r["v"]; $u=$r["u"]; $t=$r["t"]; $p=$r["p"]; ?> <INPUT TYPE="RADIO" NAME="id" VALUE="<?php echo $id;?>"><? echo $id;?> <? echo $lag ?><br> <? } ?> <input type="submit" name="cmd" value="edit"></form> <? } ?> <? if($cmd=="edit") { if (!$submit) { $sql = "SELECT * FROM tippeliga04 WHERE id=$id"; //replace news with your table name above $result = mysql_query($sql); $myrow = mysql_fetch_array($result); ?> <input type=hidden name="id" value="<?php echo $myrow["id"] ?>"> Lag:<INPUT TYPE="TEXT" NAME="lag" VALUE="<?php echo $myrow["lag"] ?>" SIZE=30><br> Spilt:<INPUT TYPE="TEXT" NAME="s" VALUE="<?php echo $myrow["s"] ?>" SIZE=30><br> Vunnet:<INPUT TYPE="TEXT" NAME="v" VALUE="<?php echo $myrow["v"] ?>" SIZE=30><br> Uavgjort:<INPUT TYPE="TEXT" NAME="u" VALUE="<?php echo $myrow["u"] ?>" SIZE=30><br> Tapt:<INPUT TYPE="TEXT" NAME="t" VALUE="<?php echo $myrow["t"] ?>" SIZE=30><br> Poeng:<INPUT TYPE="TEXT" NAME="p" VALUE="<?php echo $myrow["p"] ?>" SIZE=30><br> <input type="hidden" name="cmd" value="edit"> <input type="Submit" name="submit" value="Post Comment"> </form> <? } ?> <? if($submit) { $sql = "UPDATE tippeliga04 SET lag=\'$lag\',s=\'$s\',v=\'$v\',u=\'$u\',t=\'$t\',p=\'$p\' WHERE id=$id"; //replace news with your table name above $result = mysql_query($sql); echo "Thank you! Information updated."; } } ?> Endret 29. april 2004 av Sonymann Lenke til kommentar
Cucum(r) Skrevet 29. april 2004 Del Skrevet 29. april 2004 Ser ut som om det eksempelet har register_globals on.. Skriv det om. if($submit) blir til if($_REQUEST[submit]) osv... Lenke til kommentar
Sonymann Skrevet 29. april 2004 Forfatter Del Skrevet 29. april 2004 Det hjalp ikke, jeg føres fremdeles direkte til samme liste. Er det noe mer som kan være galt? Lenke til kommentar
joffar Skrevet 29. april 2004 Del Skrevet 29. april 2004 Hvorfor har du alle disse \ slashene dine i update queryen din? "UPDATE tippeliga04 SET lag=\'$lag\',s=\'$s\',v=\'$v\',u=\'$u\',t=\'$t\',p=\'$p\' WHERE id=$id"; Trodde det skulle v're noe slikt jeg: "UPDATE tippeliga04 SET lag='$lag',s='$s',v='$v',u='$u',t='$t',p='$p' WHERE id=$id"; Prøv å legge inn en echo text for å se om det er noen varable som mangler verdier etc.. if($cmd=="edit") { echo"foran submit : $submit"; if (!$submit) { echo "etter submit..."; elns Lenke til kommentar
Sonymann Skrevet 30. april 2004 Forfatter Del Skrevet 30. april 2004 Fremdeles kommer jeg ikke til neste steg. Kan problemet være <form action="<? echo $PHP_SELF ?>" method="post"> ? Lenke til kommentar
rogbiff Skrevet 30. april 2004 Del Skrevet 30. april 2004 Skriv inn under mysql_query() : mysql_error(); Da får du se feilen Lenke til kommentar
hm87 Skrevet 30. april 2004 Del Skrevet 30. april 2004 Jeg har samme problemet, og jeg tror det er fordi sida inkluderes slik, så går den bare tilbake til index sida siden det er fortsatt den sida som du er på. Bare at det er brukt 'get' for å inkludere det andre. Tror problemet løser seg hvis du sender det videre til en annen side. Lenke til kommentar
Svendsen Skrevet 30. april 2004 Del Skrevet 30. april 2004 kan tipse dere om en liten sak jeg har skrevet for en annen her på forumet. http://nerd.stianweb.com/edit.html Lenke til kommentar
ZoRaC Skrevet 30. april 2004 Del Skrevet 30. april 2004 Fremdeles kommer jeg ikke til neste steg.Kan problemet være <form action="<? echo $PHP_SELF ?>" method="post"> ? <form action="<? echo $_SERVER['PHP_SELF']; ?>" method="post"> Lenke til kommentar
Sonymann Skrevet 1. mai 2004 Forfatter Del Skrevet 1. mai 2004 Svendsen, ditt skript fungerer utrolig bra. Men det er en ting jeg ikke får til. Uansett hva jeg skriver, får jeg til slutt at alle felter må fylles ut. Det ser ut som om infoen har forsvunent et sted. tabelledit2.php: <?php //hente id på nyhet som skal redigeres fra url $id=$_GET["id"]; //hente ut info du vil rediger fra db $query="SELECT * FROM tippeliga04 WHERE id = '$id'"; $result= mysql_query($query, $connection) or die ("Could not execute query : $query." . mysql_error()); $tippeliga=mysql_fetch_array($result); $id="$tippeliga[id]"; $lag="$tippeliga[lag]"; $s="$tippeliga[s]"; $v="$tippeliga[v]"; $u="$tippeliga[u]"; $t="$tippeliga[t]"; $p="$tippeliga[p]"; //her kommer formen vi vil ha innholdet i variablene i, vi går og ut av php taggen. ?> <form action="index.php?side=tabelledit3" method="post" name="edit" id="edit"> Lag:<br> <h3><? echo $lag; ?></h3><br> <table width="400" border="0" cellspacing="0" cellpadding="1"> <tr> <td>Spilt:</td> <td><input name="s" type="text" id="s" value="<? echo $s; ?>" size="30"></td> </tr> <tr> <td>Vunnet:</td> <td><input name="v" type="text" id="v2" value="<? echo $v; ?>" size="30"></td> </tr> <tr> <td>Uavgjort:</td> <td><input name="u" type="text" id="u2" value="<? echo $u; ?>" size="30"></td> </tr> <tr> <td>Tapt:</td> <td><input name="t" type="text" id="t2" value="<? echo $t; ?>" size="30"></td> </tr> <tr> <td>Poeng:</td> <td><input name="p" type="text" id="p2" value="<? echo $p; ?>" size="30"></td> </tr> </table> <input name="id" type="hidden" id="id" value="<? echo $id; ?>"> <br> <input type="submit" name="Submit" value="Submit"> <input name="reset" type="reset" id="reset" value="reset"> </form> tabelledit3.php: <?php //henter de verdier som blir sendt med form. Name gir navnet innholdet blir sendt under. $id=$_POST["id"]; $lag=$_POST["lag"]; $s=$_POST["s"]; $v=$_POST["v"]; $u=$_POST["u"]; $t=$_POST["t"]; $p=$_POST["p"]; //Vi bestemmer at alle felter må være utfylt, og sjekker om de er tomme. || betyr or (eller) if ($lag == "" || $s == "" || $v == "" || $u == "" || $t == "" || $p == "") { echo "Du må fylle ut alle felter, trykk tilbake"; } else { //her skjer det ting om alle er fylt ut. $query="UPDATE tippeliga04 SET s='$s', v='$v', u='$u', t='$t', p='$p' WHERE id='$id'"; $result= mysql_query($query, $connection) or die ("Could not execute query : $query." . mysql_error()); echo "Din nyhet har blitt oppdatert"; } ?> Jeg har her fjernet innloggingsinfoen. Lenke til kommentar
Smidt Skrevet 1. mai 2004 Del Skrevet 1. mai 2004 kan tipse dere om en liten sak jeg har skrevet for en annen her på forumet. http://nerd.stianweb.com/edit.html takk Lenke til kommentar
Svendsen Skrevet 1. mai 2004 Del Skrevet 1. mai 2004 slik jeg ser det redigere du aldri et felt som sender noe info til $lag, så den er nok tom. Regner med at du heller ikke skal det prøv å ta bort sjekken mot $lag du Lenke til kommentar
Sonymann Skrevet 1. mai 2004 Forfatter Del Skrevet 1. mai 2004 Huff, ja, det var ikke verre enn som så. Takk for hjelpen! Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå