J'ai une instruction de mise à jour qui ne semble pas fonctionner pour une raison quelconque.Problème de mise à jour MySQL
else if (isset($_POST['save'])) {
$query = "UPDATE assignments
SET expdate = '$expdate',
dispdate = '$dispdate',
duedate = '$duedate',
name = '$name',
cat1 = '$cat1',
cat2 = '$cat2',
cat3 = '$cat3',
schoolid = '$schoolid',
classid = '$classid',
public = '$public',
tags = '$tags',
description = '$description',
symbol = '$symbol'
WHERE id = '$assignmentid'
AND teacherid = '$uid'";
echo $query;
mysql_query($query);
}
J'ai essayé beaucoup mais ne peut pas sembler obtenir à jour la ligne. Je sais que la fonction s'exécute bien car echo $query;
sort la requête.
La chaîne spécifique après les variables sont analysées est:
UPDATE assignments
SET expdate = '1325401200',
dispdate = '1293865200',
duedate = '1325401200',
name = 'Test 7',
cat1 = '138',
cat2 = '0',
cat3 = '0',
schoolid = '1',
classid = '33',
public = '1',
tags = 'New Vista High School,,80302,Patrick,Turmala,Test 7,,,138,No sub-categories,No sub-categories,test7,2012,testNew Vista High School,,80302,Patrick,Turmala,Test 7,,,138,0,0,teste,2012,testes',
description = 'Test 7',
symbol='teste'
WHERE id = '21'
AND teacherid = '538'
Est-il une erreur de syntaxe? Que se passe-t-il?
Merci à tous.
Etes-vous sûr que la ligne a un identifiant de 21 et un ID de 538? –
echo 'mysql_error()' après 'mysql_query()'. Si c'est une erreur de syntaxe, cela deviendra évident. –
En outre, vos trois colonnes de date sont-elles des types MySQL DATETIME, ou s'agit-il d'INT acceptant les horodatages UNIX de PHP? –