2010-11-01 4 views
0

quelqu'un peut-il m'aider avec mon format de requête. ma sortie est:php/mysql Si ternaire

UPDATE TABLE 
    SET Notes = 'testyyy', 
     0 
WHERE Id = '1' 

... quand il devrait être:

UPDATE TABLE 
    SET Notes = 'testyyy , 
     Notify = '0' 
WHERE Id = '1' 

PHP:

if(!isset($_POST['main'])) { 
$up = "UPDATE TABLE SET Notes = '".$_POST["field"]."' ","; 
$up .= " Notify = '".($data["Notes"] == '') ? '0' : '1'."'"; 
$up .= " WHERE Id = '".$_POST["id"]."'"; 
echo $up; 
mysql_query ($up); 

Répondre

3

Déplacer le) de l'autre côté de '1':

$up .= " Notify = '".($data["Notes"] == '' ? '0' : '1')."'"; 
+0

grâce, qui a résolu le problème – acctman

2

Essayez d'utiliser:

$up .= " Notify = '".($data["Notes"] == '' ? '0' : '1')."'"; 

ou vous pouvez également divisé en deux comme:

$up .= " Notify = '"; 
$up .= ($data["Notes"] == '') ? '0' : '1'."'"; 

également TABLE est un mot MySQL réservée, vous devez le placer dans le dos tiques.

3
$up = "UPDATE TABLE SET Notes = '".$_POST["field"]."' ","; 

ne regarde pas droit

$up = "UPDATE TABLE SET Notes = '".$_POST["field"]."' ,"; 

et assurez-vous que vos $ _POST valeurs sont échappés

+1

+1 pour échapper à ... – ircmaxell

+0

merci, je J'ai ajouté mysql_real_escape_string – acctman

Questions connexes