[PHP] Getter le resultat d'une query

Getter le resultat d'une query [PHP] - PHP - Programmation

Marsh Posté le 19-06-2003 à 16:44:50    

Code :
  1. $query = "SELECT count(*) AS TOTAL FROM t_menu WHERE menu_subID = " . $_POST['subid'] . " AND menu_title = \"" . $_POST['title'] . "\" LIMIT 0, 1";
  2.         $menu_exist = mysql_query ($query) or die ("Requête invalide" );


 
si je fais un fetch array, la valeur est "array". Pourtant moi je ne veux qu'un simple 0 ou un simple 1
 


---------------
http://www.boincstats.com/signature/user_664861.gif
Reply

Marsh Posté le 19-06-2003 à 16:44:50   

Reply

Marsh Posté le 19-06-2003 à 16:45:47    

logique puisque mysql_fetch_array() retourne un tableau :p


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 19-06-2003 à 16:47:58    

Sh@rdar a écrit :

logique puisque mysql_fetch_array() retourne un tableau :p  


 
et comment jfais pour le récupérer mon count alors :D


---------------
http://www.boincstats.com/signature/user_664861.gif
Reply

Marsh Posté le 19-06-2003 à 16:49:55    

cherche un peu à comment on fait pour récupérer une valeur dans un tableau ?
 
$Mavaleur = $Montableau['monindex'];
 
relis la doc sur mysql_fetch_array() tu vas apprendre plein de trucs


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 19-06-2003 à 16:58:23    

ca fait pas du code très sympa...
 

Code :
  1. $query = "SELECT count(*) AS TOTAL FROM t_menu WHERE menu_subID = " . $_POST['subid'] . " AND menu_title = \"" . $_POST['title'] . "\" LIMIT 0, 1";
  2.       $menu_exist = mysql_query ($query) or die ("Requête invalide" );
  3.       $menu_exist = mysql_fetch_array($menu_exist);
  4.       $menu_exist = $menu_exist[0];


---------------
http://www.boincstats.com/signature/user_664861.gif
Reply

Marsh Posté le 20-06-2003 à 15:01:39    

$menu_exist = mysql_result(mysql_query($query),0,0);
ou approchant


Message édité par beleg le 21-06-2003 à 00:23:32
Reply

Marsh Posté le 20-06-2003 à 15:55:24    

prk un limit 0,1 sachant que ton count te renvois qu'un resultat
prk un alias ?

Reply

Marsh Posté le 21-06-2003 à 00:20:49    

Sébastien a écrit :

prk un limit 0,1 sachant que ton count te renvois qu'un resultat
prk un alias ?


 
le limit, c que jveux juste savoir si c 0 ou plus grand que 0, alors, au lieu de parcourir les 20 enregistrements pour rien, si il trouve une donnée correspondante au 4e, bin il arrete de lire et me renvois 1


---------------
http://www.boincstats.com/signature/user_664861.gif
Reply

Marsh Posté le 21-06-2003 à 00:25:21    

burgergold a écrit :


 
le limit, c que jveux juste savoir si c 0 ou plus grand que 0, alors, au lieu de parcourir les 20 enregistrements pour rien, si il trouve une donnée correspondante au 4e, bin il arrete de lire et me renvois 1


 
tu fais fausse route, un count compte les lignes qui satisfont les where. La table est parcouru en entier et ton limit est inutile.

Reply

Marsh Posté le 21-06-2003 à 00:25:49    

Donc :
$query = "SELECT FROM t_menu WHERE menu_subID = {$_POST['subid']} AND menu_title = '{$_POST['title']}' LIMIT 0, 1";
$menu_exist = mysql_query ($query) or die ("Requête invalide" );
if( mysql_fetch_array($menu_exist) )
{
   echo( "Menu existe ;-)" );
}
else
{
   echo( "Menu existe pas :(" );
}


Message édité par Mara's dad le 21-06-2003 à 00:28:06

---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 21-06-2003 à 00:25:49   

Reply

Marsh Posté le 21-06-2003 à 00:30:14    

RMQ : Fait gaffe aux problème d'injection SQL avec un code comme çà !
 
:non: Pas de $_POST['BlaBla'] directement dans une requête.


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 21-06-2003 à 01:05:49    

Mara's dad a écrit :

RMQ : Fait gaffe aux problème d'injection SQL avec un code comme çà !
 
:non: Pas de $_POST['BlaBla'] directement dans une requête.


 
jsais pas si t'a remarqué, mais jconstruis ma chaine de caractere avec "blabla" . $_POST . "blabla"
 
alors pas de probleme


---------------
http://www.boincstats.com/signature/user_664861.gif
Reply

Marsh Posté le 21-06-2003 à 01:15:49    

$_POST['title']
 
Et çà fait quoi avec title="Un truc \" OR \"x\"=\"x" ?
 


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 21-06-2003 à 01:17:35    

Mara's dad a écrit :

$_POST['title']
 
Et çà fait quoi avec title="Un truc \" OR \"x\"=\"x" ?
 
 


 
 :??:  
 
pk est-ce que j'aurais un titre du genre
 
deja que mon titre est limité à 15 caractères


---------------
http://www.boincstats.com/signature/user_664861.gif
Reply

Marsh Posté le 21-06-2003 à 01:25:33    

J'ai pas dis que tu avais un titre de ce genre, je dis que rien n'empèche un client de t'envoyer çà en POST !
 
C'est sûr que pour la requête en question on s'en fout un peu.
C'était juste pour te mettre en garde contre ce genre de pratique.


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed