Vinzenz Mai: datenbank

Beitrag lesen

Hallo

[... viel Code ohne jegliche Fehlerbehandlung gelöscht ...]

  

>  if($counter==0)  
>  {  
>   $counter++;  

// In diesem Fall hat $counter also den Wert 1,  
// Nur in diesem Fall führst Du ein INSERT durch  
// Daher mache es Dir einfach:  
// Standardwert des Feldes "hits" ist 1  
// Lasse das Feld "hits" in Deiner INSERT-Anweisung weg.  
// Fall soweit erledigt.  
  

>   $insert2="INSERT INTO bewertung (bez,name,mail,bewert,date_bewert,hits) VALUES ('$hidden','$name','$mail','$bewert','$today','$counter')";  

// Hier ein Debug-Statement einfügen, so dass Du den Inhalt Deiner Variablen  
// $insert2 angezeigt bekommst. Steht da das drin, was Du erwartest.  
  

>    mysql_query($insert2,$link)or die ("bewertung insert: Ungültige Abfrage: " . mysql_error());  

// und hier die "Ungültige Abfrage" gerade mit ausgeben :-)  
  

>  }  
>  else  
>  {  

// In diesem Fall wird der Feld des Wertes "hits" um 1 erhöht.  
// Auch dies überlassen wir einfach der Datenbank  
  

>   $update="UPDATE bewertung SET name='$name',     mail='$mail', bewert='$bewert',date_bewert='$today',hits='$counter' WHERE bez like '$hidden'";  

// stattdessen:  
... ,hits = hits + 1 WHERE ...  
// und auch hier Debug-Ausgabe des SQL-Statements  
  

>    mysql_query($update,$link)or die ("bewertung update: Ungültige Abfrage: " . mysql_error());  

und für den Datumsstempel in Deiner Tabelle könntest Du clevererweise die Eigenschaften des TIMESTAMP-Datentyps nutzen - und somit die Pflege dieses Feldes ebenfalls der Datenbank überlassen.

Freundliche Grüße

Vinzenz