Php requete mysql avec variable sql
nordiste
-
nordiste -
nordiste -
Bonjour,
je cherche a inverser une valeur de 2 éléments dans la base de donnée.
a savoir une colonne position qui va donner l'ordre d'affichage des objets.
mon probleme est que cette requete fonctionne directement dans mysql mais pas avec PHP.
$numero = mysql_real_escape_string($_GET['id']);
$requete = "SET @t1= (select `position` from site_article where `id` = '$numero');
update site_article set `position` = @t1 where `position` = @t1 - 1;
update site_article set `position` = @t1 + 1 where `id` = '$numero';";
$resultat = mysql_query ($requete) or die(mysql_error());
donc soit on trouve une autre requete (imbriquee ?) ou je dois le faire en 3 requetes, et recuperer la réponse en PHP (ce qui me semble lourd...).
je cherche a inverser une valeur de 2 éléments dans la base de donnée.
a savoir une colonne position qui va donner l'ordre d'affichage des objets.
mon probleme est que cette requete fonctionne directement dans mysql mais pas avec PHP.
$numero = mysql_real_escape_string($_GET['id']);
$requete = "SET @t1= (select `position` from site_article where `id` = '$numero');
update site_article set `position` = @t1 where `position` = @t1 - 1;
update site_article set `position` = @t1 + 1 where `id` = '$numero';";
$resultat = mysql_query ($requete) or die(mysql_error());
donc soit on trouve une autre requete (imbriquee ?) ou je dois le faire en 3 requetes, et recuperer la réponse en PHP (ce qui me semble lourd...).
A voir également:
- Php requete mysql avec variable sql
- Easy php - Télécharger - Divers Web & Internet
- Mysql community download - Télécharger - Bases de données
- Expert php pinterest - Télécharger - Langages
- Logiciel sql - Télécharger - Bases de données
- Vba range avec variable ✓ - Forum VB / VBA
5 réponses
au fait voici l'erreur :
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 'update site_article set `position` = @t1 where `position` = @t1 - 1; update' at line 2
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 'update site_article set `position` = @t1 where `position` = @t1 - 1; update' at line 2
mysql_query() n'accepte pas les requetes multiples, voilà où est l'erreur.
Donc oui, 3 requêtes, l'utilisation d'une variable mysql devient dont caduque.
Donc oui, 3 requêtes, l'utilisation d'une variable mysql devient dont caduque.
Non.
Mais quel en serait vraiment l'intérêt ?
Surtout que les requêtes update sont des requêtes très légères. ;)
En plus, j'imagine que ce script est pour un panel admin, donc utilisé peu fréquemment, cherche plutôt à bien indexer tes tables et optimiser les plus lourdes de tes requêtes select, et aussi utiliser éventuellement un système de cache pour ton site, c'est sur ces facteurs que l'on gagne beaucoup de performances. :)
Mais quel en serait vraiment l'intérêt ?
Surtout que les requêtes update sont des requêtes très légères. ;)
En plus, j'imagine que ce script est pour un panel admin, donc utilisé peu fréquemment, cherche plutôt à bien indexer tes tables et optimiser les plus lourdes de tes requêtes select, et aussi utiliser éventuellement un système de cache pour ton site, c'est sur ces facteurs que l'on gagne beaucoup de performances. :)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question