2010-11-24 4 views
-1

Die E-Mail-Abfrage unten soll durch ein Feld namens "TTemail" ausgelöst werden 0. Wenn ich versuche, es zu verwenden, bekomme ich You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '1' at line 1.MySQL-Fehler von einer IF-Anweisung

Es scheint, dass die E-Mail für die zumindest dem ersten Benutzernamen aussendet, wo ttemail = 0.

Irgendwelche Ideen, warum?

Vielen Dank im Voraus,

John

if($row["ttemail"] == 0){ 
    $mailaddress = $row['email']; 
    $link1 = "<a href='http://www...com/page.php'>Page Title</a>"; 
    $message1 = "Congratulations, message. 

       <br> 
       <br> 

       More Message 

       <br> 
       <br> 

       Please click the link below to see more. 
       <br> 
       <br> 

       $link1 
       ";  

    $headers = 'MIME-Version: 1.0' . "\r\n"; 
    $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; 
    $headers .= "From: Website Name <[email protected]>" . "\r\n"; 

    $queryem = mail($mailaddress, "Congratulations, message 
          $submission.", $message1, $headers); 

    //$ttquery = sprintf("Update login SET ".$row['ttemail']." = '1' WHERE username = ".$row['username']."");   

    mysql_query($queryem) or die(mysql_error()); 
    mysql_query($ttquery) or die(mysql_error()); 
} else { 
} 
+3

Warten Sie, was? Sie verwenden den Rückgabewert eines Aufrufs von 'mail()' als MySQL-Abfrage ??? – EboMike

+2

Sie möchten einen Boolean als Abfrage verwenden? = P – MatTheCat

+1

Haben Sie gestern nicht dieselbe Frage gestellt und habe ich Sie in dieser Frage nicht gebeten, die generierten Abfragen anstelle des bedeutungslosen PHP-Quellcodes anzuzeigen? –

Antwort

0

Ich glaube, Sie vermissen ein "in Ihrer where-Klausel. Überprüfen Sie die korrigierte Abfrage unter -

$ttquery = sprintf("Update login SET ".$row['ttemail']." = '1' WHERE username = '".$row['username']."'"); 
Verwandte Themen