Rechercher : dans
Par :

Variable php dans requete mysql

Dernière réponse le 15 aoû 2008 à 11:26:39 nonoleharicot, le 15 jun 2005 à 10:14:49 
 Signaler ce message aux modérateurs

Salut a tous,
Voila j'ai un petit problem j'aimerai inserer des variables dans une requete mysql et je sais pas comment faire voila la partie qui me gene:

$i=0;
while ($i<=$nbre_date)
{
$a=$i+7
?>
<TR>
<?
$retour=mysql_query('SELECT * FROM saison ORDER BY id LIMIT i,a');

je voudrais inserer mes variable $i et $a dans cette requete a la place de i et a

1

Timon1102, le 15 jun 2005 à 10:19:34

Ca doit marcher :

$i=0; 
while ($i<=$nbre_date) $a=$i+7  ;
echo "<TR> \n" ;
$retour=mysql_query("SELECT * FROM saison ORDER BY id LIMIT $i,$a"); 

Répondre à Timon1102

2

nauno, le 15 jun 2005 à 10:25:50
  • +3

C presque ca il manque juste les quotes
explication : sans les quotes sql interprete $a et $i comme étant les champ "$a" ete "$i" de ta table et non pas comme kom des variables

$i=0; 
while ($i<=$nbre_date) $a=$i+7  ;
echo "<TR> \n" ;
$retour=mysql_query("SELECT * FROM saison ORDER BY id LIMIT '$i','$a'"); 

Répondre à nauno

3

Timon1102, le 15 jun 2005 à 10:31:53

Toutafait

Répondre à Timon1102

4

nauno, le 15 jun 2005 à 10:37:16

Pour une fois ke je donne une bonne réponse...

Répondre à nauno

5

nonoleharicot, le 15 jun 2005 à 11:21:30

Merci a vous deux pour votre reponse

Répondre à nonoleharicot

6

nonoleharicot, le 17 jun 2005 à 13:16:34
  • +2

J'ai essaye ce que vous avez dit mais ce n'etait pas ça en faite c'etait
$i=0;
while ($i<=$nbre_date)
{ $a=$i+7 ;
echo "<TR> \n" ;
$retour=mysql_query('SELECT * FROM saison ORDER BY id LIMIT '.$i'.,'.$a.'');

c'atit une concatenation qu'il fallait faire

Répondre à nonoleharicot

7

tony, le 17 jun 2005 à 17:06:07
  • +1

Sûr et certain que ça ça fonctionne :

$retour=mysql_query("SELECT * FROM saison ORDER BY id LIMIT '$i','$a' ");

Répondre à tony

8

nonoleharicot, le 20 jun 2005 à 10:28:15

Ben chez moi ça marche pas en tout cas

Répondre à nonoleharicot

9

faren, le 19 jun 2007 à 11:08:09

Je viens d'avoir le même problème après quelques prise de tête....

il faut bien mettre des quote mais `$i` et non '$i' Je sais pas pourquoi cela dit...

Répondre à faren

10

Aurelien, le 12 jui 2007 à 18:16:02
  • +1

Desolé pour le UP de deux ans mais c'était pour eclaircir ce petit problème qui pourraient aider (tout comme moi) des gens qui cherchent a mettre une variable dans une requette !

Cette requette est bonne :
$retour=mysql_query("SELECT * FROM saison ORDER BY id LIMIT '$i','$a' ");

Celle ci ne marchera pas :
$retour=mysql_query('SELECT * FROM saison ORDER BY id LIMIT '$i','$a' ');

POurquoi ? car la simple difference entre la 1ere et la deuxième c'est que la première contient pour demarrer la requette, des guillemets ! Or la deuxième contient (toujours au debut de la parenthèse) une apostrophe. Comme c'est une apostrophe qui sert a inserer la variable, d'aprés moi (mais cela reste une supposition), PHP considère que la requette se fait seulement entre la 1ère est la 2ème apostrophe !
Si vous mettez donc des guillemets au debut de votre parenthèse, Php attendra les seconds guillemets pour arretter la requette ! Cela permet donc de mettre des apostrophe !

Répondre à Aurelien

11

d_laurent23, le 18 aoû 2007 à 12:05:37
  • +2

Bonjour

> Faren : les `quotes inversées` sont réservées aux champs de la base de données... Et pour spécifier une variable php dans une requête, c'est bien les 'quotes simples' qu'il faut utiliser.

Cordialement,
Laurent.

Répondre à d_laurent23

12

eutanifa, le 25 jan 2008 à 13:32:08

Bonjour tout le monde,

s'il vous plait, je m'y connais un peu en java , mais en php je m'y connais pas du tout ... j'ai pourtant accepté un entretien de stage mercredi prochain ; est ce que je peux avoir le temps de connaitre les principaux trucs de php avant l'entretien?

Répondre à eutanifa

13

 pjenifer, le 15 aoû 2008 à 11:26:39
  • +1

Va sur http://www.siteduzero.com/tuto-3-4-0-un-site-dynamique-avec-­php.html. Lis les chapitre l'un après l'autre et tu auras quelque base.

Répondre à pjenifer