Hallo ik heb een probleem met mijn update script
Hij veranderd de pagina niet er komt geen fout melding
Dit bericht komt gewoon in beeld Suc6vol veranderd
Maar hij update niets
Hier de source
<?php
//website veranderen
elseif($_GET['actie'] == verander){
//dit gaan we doen in veranderen
echo "ID<br>";
$sql = "SELECT * FROM pages ORDER BY id DESC";
$resultaat = mysql_query($sql) or die(mysql_error());
while ($list = mysql_fetch_object($resultaat)) {
echo "$list->id | ";
echo ubb_code($list->bericht);
echo "<br>";
}
Je gaat bij een paar zaken de mist in.
Na je query echo je gewoon echo "Suc6vol veranderd"; dus hij geeft het altijd weer gelukt of mislukt.
Na je query zou je een controle moeten uitvoren of de query daadwerkelijk gelukt is.
Hieronder geef ik een voorbeeldje
<?php
$sql = "
UPDATE
regisseurs
SET
id = '".$id."',
naam = '".$naam."'
WHERE
id = '".$rid."' ";
//Hier de query
$result = mysql_query( $sql );
if ( $result ) {
echo 'De gegevens van '.$_POST['naam'].' zijn gewijzigd'.PHP_EOL;
} else {
echo 'Sorry, onverwachte fout met de database.';
trigger_error (mysql_error ());
}
?>
En als tweede punt maak je een fout bij de tabelnamen
mysql_query("UPDATE pages SET id,text WHERE id='".$_POST["$list->id"]." AND bericht='".$_POST["$list->bericht"]."'");
echo "Suc6vol veranderd";
Je zegt dat hij het veld text moet aanpassen en niet het veld bericht zoals het veld heet als ik het goed begrijp.
@RedCrew: Met if($result) check je alleen of de query gelukt is of niet, maar het zegt niet of er iets is geupdated. Dat kan je weer checken met mysql_affected_rows().
En wat denk je van:
elseif($_GET['actie'] == verander){
Moet vast en zeker dit zijn:
elseif($_GET['actie'] == "verander"){
Dat ziet hij zelf ook wel als hij naar jou geluisterd heeft San. Bovenstaande geeft namelijk een Notice.
"undefined index blabla in blabla on line blabla"
[edit] Want ik neem aan dat hij jou stukje over error reporting heeft overgenomen[/edit]