02. oktober 2006 - 21:15
Der er
2 kommentarer og 1 løsning
Problem med add og edit i php!
Jeg sidder lige og prøver at lave et edit og et add function til min mysql, men har problem med at få det til at virke, min kode ser sådan ud: add.php: <?php $conn = mysql_connect("xxxxx", "xxxxx", "xxxxx") or die(mysql_error()); $db = mysql_select_db("xxxxx") or die(mysql_error()); if($submit) $products_name = $_POST['products_name']; if(!$title){ echo "Error: "; exit(); end of if $result = mysql_query("INSERT INTO products (products_name) VALUES ('$products_name',NOW())"); //print success message. echo "<meta http-equiv=Refresh content=4;url=index.php>"; }//end of if($submit). // If the form has not been submitted, display it! else {//begin of else ?> <br> <h3>::Add</h3> <form method="post" action="<?php echo $PHP_SELF ?>"> Title: <input name="title" size="40" maxlength="255"> <br> Text1: <textarea name="text1" rows="7" cols="30"></textarea> <br> Text2: <textarea name="text2" rows="7" cols="30"></textarea> <br> <input type="submit" name="submit" value="Add News"> </form> <? }//end of else ?> edit.php: <?php $conn = mysql_connect("xxxxx", "xxxxx", "xxxxx") or die(mysql_error()); $db = mysql_select_db("xxxxx") or die(mysql_error()); if($submit) { $products_navn = $_POST['products_navn']; $result = mysql_query("UPDATE products SET products_navn='$products_navn' WHERE products_prodnum='$products_prodnum'"); header("location: produkter.php"); } elseif($products_prodnum) { $result = mysql_query("SELECT * FROM products WHERE products_prodnum='$products_prodnum' "); while($myrow = mysql_fetch_assoc($result)) { $products_navn = $row["products_navn"]; ?> <br> <h3>::Edit </h3> <form method="post" action="<?php echo $PHP_SELF ?>"> <input type="hidden" name="products_prodnum" value="<?php echo $row['products_prodnum']?>"> Title: <input name="products_navn" size="40" maxlength="255" value="<?php echo $row["products_navn"] ?>"> <input type="submit" name="submit" value="UPDATE products"> </form> <? }//end of while loop }//end else ?> Hvad gør jeg forkert?
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
02. oktober 2006 - 22:01
#1
Først og fremmest ville jeg nok bruge if(isset($_POST['submit'])){ Det undrer mig i det hele taget du skifter mellem at bruge $_POST og bare bruger fx $title, som global. Din query i add er også forkert syntaks: $result = mysql_query("INSERT INTO products (products_name) VALUES ('$products_name',NOW())"); Går ud fra den skal se således ud, eller lign. $result = mysql_query("INSERT INTO products (products_name, time) VALUES ('$products_name',NOW())");
03. oktober 2006 - 00:19
#2
Hej, Jeg har skrevet nu kode: edit.php: <?php $conn = mysql_connect("xxxxx", "xxxxx", "xxxxx") or die(mysql_error()); $db = mysql_select_db("xxxxx") or die(mysql_error()); ?> <table border="0" width="785" cellspacing="1" cellpadding="3" align="center"> <form action="save.php" method="post"> <input type="hidden" value="<?= $row['products_prodnum'] ?>" name="products_prodnum" size="1"> <tr> <td width="20%" valign="bottom"><font class="undermenu"><b>Varernr.</b></td> <td width="20%" valign="bottom"><font class="undermenu"><b>Navn</b></td> <td width="20%" valign="bottom"><font class="undermenu"><strong>Size</strong></td> <td width="20%" valign="bottom"><font class="undermenu"><b>Pris</b></td> <td width="20%" valign="bottom"><font class="undermenu"><b>Kategori</b></td> </tr> <tr> <td><font class="undermenu"><?= $row['products_prodnum'] ?></td> <td><input type="text" value="<?= $row['products_navn'] ?>" name="products_navn" size="20" /></td> <td><input type="text" value="<?= $row['products_size'] ?>" name="products_size" size="20" /></td> <td><input type="text" value="<?= $row['products_pris'] ?>" name="products_pris" size="20" /></td> <td><input type="text" value="<?= $row['products_type'] ?>" name="products_type" size="20" /></td> </tr> <tr> <td colspan="5" valign="bottom"><font class="undermenu"><b>Beskrivelse:</b></td> </tr> <tr> <td colspan="5"><textarea name="products_beskrivelse" cols="94" rows="5"><?= $row['products_beskrivelse'] ?></textarea></td> </tr> <tr> <td colspan="3"><font class="undermenu"><b>Stort billede:</b></td> <td colspan="2"><font class="undermenu"><b>Lille billede:</b></td> </tr> <tr> <td colspan="3" valign="top"><img src="<?= $row['products_imageurl'] ?>" width="400" height="400" border="0"></td> <td colspan="2" valign="top"><img src="<?= $row['products_thumbnailimageurl'] ?>" width="95" height="95" border="0" /></td> </tr> <tr> <td colspan="3" valign="top"><input type="text" value="<?= $row['products_imageurl'] ?>" name="products_type" size="45" /></td> <td colspan="2" valign="top"><input type="text" value="<?= $row['products_thumbnailimageurl'] ?>" name="products_type" size="45" /></td> </tr> <tr> <td colspan="5" align="center" valign="middle"><input type="hidden" name="action" value="add" /> <input type="submit" value="ret"></td> </tr> </form> </table> save.php: <?php $conn = mysql_connect("xxxxx", "xxxxx", "xxxxx") or die(mysql_error()); $db = mysql_select_db("xxxxx") or die(mysql_error()); ?> if($_POST[action] =="add") { mysql_query("UPDATE products SET products_navn ='$_POST[products_navn]', products_size ='$_POST[products_size]', products_pris ='$_POST[products_pris]', products_type ='$_POST[products_type]', products_beskrivelse ='$_POST[products_beskrivelse]', products_imageurl ='$_POST[products_imageurl]', products_thumbnailimageurl ='$_POST[products_thumbnailimageurl]' WHERE products_prodnum ='$_POST[products_prodnum]'") or die(mysql_error()); $status = Opdateret; } header("location: produkter.php"); ?> Og det virker på nær products_type, hvis man ændre tallet, så opdaterer den det til 0, kan du se hvad jeg gør forkert? Kan jeg tilføje tidspunkt for ændring af record? Jeg har datoen i databasen. Forresten kan jeg kopierer koden til add functionen også?
03. oktober 2006 - 15:41
#3
Nå, jeg løste selv problemmet.
Vi tilbyder markedets bedste kurser inden for webudvikling