PHP et SQL

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : PHP et SQL

Re: PHP et SQL

par hazaki » 27 déc. 2011, 15:21

Ok, ça marche, merci beaucoup !

Re: PHP et SQL

par Mazarini » 27 déc. 2011, 15:12

Il faut mettre le ;

Re: PHP et SQL

par hazaki » 27 déc. 2011, 14:33

Mais quand j'enlève le point, ça me renvoie une erreur

Re: PHP et SQL

par xTG » 27 déc. 2011, 13:48

Bah tu enlèves l'opérateur de concaténation. 8-|

Re: PHP et SQL

par hazaki » 27 déc. 2011, 12:41

Ah, bien et comment je fais pour enlever ça ?

Re: PHP et SQL

par xTG » 27 déc. 2011, 12:39

Ah je crois savoir...
print "<li>"  .$nuplet['Temps'].
print "</li>";
A la fin de la variable tu as mis une concaténation (le point).
Donc il concatène avec le retour de la fonction print qui doit renvoyer true en cas d'affichage réussi. ;)

Re: PHP et SQL

par hazaki » 27 déc. 2011, 12:36

Oui mais c'est une différence de jour !
Et en fait quand je le fais sur phpmyadmin c'est le résultat attendu mais sur ma page ça me fout un '1' derrière le chiffre attendu, et je sais pas d'où vient ce 1 !

Re: PHP et SQL

par xTG » 27 déc. 2011, 12:25

Tu prends une différence de temps... Si tu n'as pas exécuté les requêtes (script et phpmyadmin) en même temps c'est un peu logique de ne pas avoir le même écart de temps non ? :D

Re: PHP et SQL

par hazaki » 27 déc. 2011, 11:41

Ok, j'ai réussi à afficher le résultat mais au lieu d'afficher 1458 (résultat obtenu dans phpmyadmin) il affiche 14581.
Voici le code du else :

Code : Tout sélectionner

else { echo "Cet Ordinateur n'est pas obsolète"; $requete =" SELECT Datediff(obsolescence,Curdate()) As Temps FROM ordinateur WHERE nom = '".$nom."' "; $resultat = mysql_query($requete) or die(mysql_error()); print "<ul>\n"; while($nuplet = mysql_fetch_assoc($resultat)){ print "<li>" .$nuplet['Temps']. print "</li>"; } print "</ul>"; }

Re: PHP et SQL

par Mazarini » 27 déc. 2011, 11:25

Pour récupérer les données, faire mysql_fetch_assoc()

Re: PHP et SQL

par kyukyubi » 27 déc. 2011, 10:55

Une dernière question,
comment on affiche le résultat d'une requête SQL ?
Parce que je dois montrer ensuite le nombre de jour qu'il reste, j'arrive à faire la requête mais je ne sais pas comment afficher le résultat.

Re: PHP et SQL

par kyukyubi » 27 déc. 2011, 10:50

C'est bon mon programme marche,
j'ai mis :
$requete= "
SELECT nom
FROM ordinateur
Where obsolescence < curdate()
AND '".$nom."' = nom ";

et j'ai mis dans le if : if($resultat != false && mysql_num_rows($resultat) == 1).

Merci pour l'aide

Re: PHP et SQL

par Mazarini » 27 déc. 2011, 10:41

Dans le die(), affiche la requete :
$resultat = mysql_query($requete) or die(mysql_error().'<br>'.$requete);

Ca te permettra peut être de voir ce qui ne va pas. A priori, il manque des quotes autour du nom de l'ordinateur d'après le message, mais pas d'après le code PHP.

Edit : l'erreur est la : AND $nom = nom "; Il faut metre des quotes autour de $nom.

Re: PHP et SQL

par kyukyubi » 27 déc. 2011, 10:37

Je vois pas le problème dans mon select

Re: PHP et SQL

par xTG » 27 déc. 2011, 10:23

Dans ton select le nom de la colonne et sa valeur son inversé.
Et il faut aussi ici protéger la variable avec mysql_real_escape_string().