Vraag & Antwoord

Webprogrammeren & scripting

Update functie wil niet slagen

2 antwoorden
  • Ik heb het volgende formulier waarme ik een nieuwsbericht in laad en kan wijzigen en weer verzenden. [code:1:da8ce0175b] <?php include("../nieuws/config.php"); //De SQL-instructie heeft een news_ID nodig, die door news_list.php wordt doorgegeven $SQL_news = "SELECT * FROM news WHERE news_ID=$news_ID"; $news_result = mysql_query($SQL_news); $news = mysql_fetch_array($news_result); mysql_close(); //<br>-tags converteren naar regeleinden $news['news_main'] = eregi_replace('<br[[:space:]]*/?[[:space:]]*>', "\n", $news['news_main']); ?> <FORM ACTION="news_list.php" METHOD="POST"> <table width="550" border="1" align="center" cellpadding="4" cellspacing="0" bordercolor="#FFFFFF" bgcolor="#ECE9D8"> <tr> <th scope="row"><div align="center"><span class="style1">Berichttitel</span></div></th> <td width="350"> <input type="text" name="news_header" value="<?php echo $news['news_header'] ?>" size=30 maxlength=120></td> </tr> <tr> <th scope="row"><div align="center"><span class="style1">Datum/tijd</span></div></th> <td> <input type="text" name="news_datetime" value="<?php echo $news['news_datetime'] ?>" size="19" maxlength="19"></td> </tr> <tr> <th width="200" scope="row"><div align="center"><span class="style1">Berichttekst</span></div></th> <td> <textarea name="news_main" cols="60" rows="10"><?php echo $news['news_main']?></textarea></td> </tr> <tr> <th colspan="2" scope="row"> <input type="hidden" name="news_ID" value=<?php echo $news['news_ID']?>> <input type="hidden" name="action" value="update"> <input type="submit" name="submit" value="Ok"></th> </tr> </table> </FORM> [/code:1:da8ce0175b] ================================================= Bovenstaand formulier verzend ik naar het volgende bestand ================================================= [code:1:da8ce0175b] <?php include("../nieuws/config.php"); //voer de gekozen bewerking uit if($_GET['action']=="delete") { // Er is op de hyperlink Verwijderen geklikt: record verwijderen $news_SQL_del = "DELETE FROM news WHERE news_ID=$news_ID"; $bool = mysql_query($news_SQL_del); if($bool == 1) echo "<script LANGUAGE=Javascript>window.alert('Het bericht is verwijderd.')</script>"; if($bool <> 1) echo "<script LANGUAGE=Javascript>window.alert('Er is een fout opgetreden bij het verwijderen.')</script>"; } if($_POST['action']=="insert") { // Regeleinden in de hoofdtekst omzetten in HTML-regeleinden $news_main = nl2br($news_main); $news_main = eregi_replace("\n", "", $news_main); $news_SQL_insert = 'INSERT INTO news (news_header, news_datetime, news_main) VALUES ("'. $_POST['news_header'] . '" , "'. $_POST['news_datetime'] . '", "'. $_POST['news_main']. '")'; $bool = mysql_query($news_SQL_insert); if($bool == 1) echo "<script type='text/javascript'>window.alert('Het bericht is toegevoegd.')</script>"; if($bool <> 1) echo "<script type='text/javascript'>window.alert('Er is een fout opgetreden bij het toevoegen van het bericht.')</script>"; } if($_POST['action']=="update") { // Regeleinden in de hoofdtekst omzetten in HTML-regeleinden $news_main = nl2br($news_main); $news_main = eregi_replace("\n", "", $news_main); $news_SQL_insert = "UPDATE news SET news_header='".$_POST["news_header"] ."', news_main='".$_POST["news_main"] ."', news_datetime='".$_POST["news_datetime"] ."' WHERE news_ID='".$_POST["news_ID"]."'"; $bool = mysql_query($news_SQL_update); if ($bool == 1) echo "<script type='text/javascript'>window.alert('Het bericht is aangepast.')</script>"; if ($bool <> 1) echo "<script type='text/javascript'>window.alert('Het bericht is niet aangepast.')</script>"; } ?> Hieronder worden de berichten dan weergegeven. [/code:1:da8ce0175b] Wat is mijn probleem: alles lukt behalve 1 ding hij past na het veranderen van het bericht het bericht niet aan in de database. Want als ik bericht later opvraag vanuit de database dan zie ik geen wijziging. Alvast bedankt voor jullie reactie(oplossingen) --------------------------------------------------------------------------------
  • Een verschil in variabele namen: [color=darkred:0e9ef7cde3]$news_SQL_[b:0e9ef7cde3]insert [/b:0e9ef7cde3]= "UPDATE news ....."; $bool = mysql_query($news_SQL_[b:0e9ef7cde3]update[/b:0e9ef7cde3]); [/color:0e9ef7cde3]

Beantwoord deze vraag

Weet jij het antwoord op deze vraag? Registreer of meld je aan met je account

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.