Récupération de valeurs SQL avec PHP
Résolu
holycasto3101
Messages postés
5
Date d'inscription
Statut
Membre
Dernière intervention
-
Autumn`Tears Messages postés 1054 Date d'inscription Statut Membre Dernière intervention -
Autumn`Tears Messages postés 1054 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Ma question est la suivante. J'ai une base de donnée SQL dans laquelle j'ai plusieurs colonne. J'aimerais récupérer plusieurs valeurs d'une seule colonne et retourner ses valeurs dans des variables différentes. Voici le bout de code qui nous intéresse :
$query2 = "SELECT 'w1name' FROM 'datas' WHERE 'Company' = '".$Company."'";
$result2 = mysql_query($query2) or die ("Error in query: $query. " . mysql_error());
while($data2 = (mysql_fetch_object($result2))){
$waitressnbr1=$data2->w1name;
}
En résumé, il y a 5 valeurs sous la colonne w1name que j'aimerais pouvoir affecter à des variables $waitressnbr1 $waitressnbr2 etc...
J'ai remarqué qu'en faisant un echo $data2->w1name; j'obtenais toutes les valeurs trouvés mais comment est-ce que je peux récupérer la première, la deuxième etc. de façon séparé l'une d'elle ?
Merci !
Ma question est la suivante. J'ai une base de donnée SQL dans laquelle j'ai plusieurs colonne. J'aimerais récupérer plusieurs valeurs d'une seule colonne et retourner ses valeurs dans des variables différentes. Voici le bout de code qui nous intéresse :
$query2 = "SELECT 'w1name' FROM 'datas' WHERE 'Company' = '".$Company."'";
$result2 = mysql_query($query2) or die ("Error in query: $query. " . mysql_error());
while($data2 = (mysql_fetch_object($result2))){
$waitressnbr1=$data2->w1name;
}
En résumé, il y a 5 valeurs sous la colonne w1name que j'aimerais pouvoir affecter à des variables $waitressnbr1 $waitressnbr2 etc...
J'ai remarqué qu'en faisant un echo $data2->w1name; j'obtenais toutes les valeurs trouvés mais comment est-ce que je peux récupérer la première, la deuxième etc. de façon séparé l'une d'elle ?
Merci !
A voir également:
- Récupération de valeurs SQL avec PHP
- Convertisseur récupération de texte - Guide
- Easy php - Télécharger - Divers Web & Internet
- Excel liste de valeurs - Guide
- Impossible de récupérer mon compte gmail - Guide
- Recuperation message whatsapp supprimé - Guide
4 réponses
Salut,
Essaie avec mysql_fetch_row plutôt que mysql_fetch_object
Mais il vaudrait mieux te pencher sur PDO, ou mysqli, car tout ce qui est mysql_* devient obsolète !
Essaie avec mysql_fetch_row plutôt que mysql_fetch_object
Mais il vaudrait mieux te pencher sur PDO, ou mysqli, car tout ce qui est mysql_* devient obsolète !
Salut,
Merci pour ta réponse rapide... j'ai essayer avec mysql_fetch_row mais ça me dit ''Array'' comme valeur lorsque je fais un echo. J'avais penser à une solution ''alternative'' du genre : dans la table members créer 5 colonnes avec 'w1name' 'w2name' 'w3name' et ainsi de suite puis lorsque je fais ma validation faire quelque chose du genre :
//Récupération de nom de la compagne dans la table 'members'
$query1 = "SELECT 'Company' FROM 'members' WHERE 'username' = '".$user."'";
$result1 = mysql_query($query1) or die ("Error in query: $query. " . mysql_error());
$data1 = (mysql_fetch_array($result1));
$Company = $data1['Company'];
echo $Company; //fonctionne
//Récupération du nom 'w1name' dans la table 'members' associé à la Company
$query2 = "SELECT 'w1name' FROM 'members' WHERE 'Company' = '".$Company."'";
$result2 = mysql_query($query2) or die ("Error in query: $query. " . mysql_error());
$data2 = (mysql_fetch_array($result2));
$waitressnbr1 = $data2['w1name'];
echo $waitressnbr1; //fonctionne
//Récupérations des toutes les données ayant la 'Company' et la 'w1name' identique au variable $Company et $waitressnbr1 dans la table datas
$query = "SELECT * FROM 'datas' WHERE 'Company' = '".$Company."' AND 'w1name' = '".$waitressnbr1."'";
$result = mysql_query($query) or die ("Error in query: $query. " . mysql_error());
$data = (mysql_fetch_array($result));
$w1name = $data['w1name'];
echo $w1name; //ne fonctionne pas
Pour l'instant tout fonctionne pour la 'Company' et le 'w1name' dans la table members mais dès que je change pour la table 'datas' je n'ai plus de données qui s'affiche depuis mon echo. Est-ce que ça pourrait tenir du fait que c'est deux tables différentes ?
Et merci pour ton conseil pour PDO ou mysqli je vais y voir !
Merci pour ta réponse rapide... j'ai essayer avec mysql_fetch_row mais ça me dit ''Array'' comme valeur lorsque je fais un echo. J'avais penser à une solution ''alternative'' du genre : dans la table members créer 5 colonnes avec 'w1name' 'w2name' 'w3name' et ainsi de suite puis lorsque je fais ma validation faire quelque chose du genre :
//Récupération de nom de la compagne dans la table 'members'
$query1 = "SELECT 'Company' FROM 'members' WHERE 'username' = '".$user."'";
$result1 = mysql_query($query1) or die ("Error in query: $query. " . mysql_error());
$data1 = (mysql_fetch_array($result1));
$Company = $data1['Company'];
echo $Company; //fonctionne
//Récupération du nom 'w1name' dans la table 'members' associé à la Company
$query2 = "SELECT 'w1name' FROM 'members' WHERE 'Company' = '".$Company."'";
$result2 = mysql_query($query2) or die ("Error in query: $query. " . mysql_error());
$data2 = (mysql_fetch_array($result2));
$waitressnbr1 = $data2['w1name'];
echo $waitressnbr1; //fonctionne
//Récupérations des toutes les données ayant la 'Company' et la 'w1name' identique au variable $Company et $waitressnbr1 dans la table datas
$query = "SELECT * FROM 'datas' WHERE 'Company' = '".$Company."' AND 'w1name' = '".$waitressnbr1."'";
$result = mysql_query($query) or die ("Error in query: $query. " . mysql_error());
$data = (mysql_fetch_array($result));
$w1name = $data['w1name'];
echo $w1name; //ne fonctionne pas
Pour l'instant tout fonctionne pour la 'Company' et le 'w1name' dans la table members mais dès que je change pour la table 'datas' je n'ai plus de données qui s'affiche depuis mon echo. Est-ce que ça pourrait tenir du fait que c'est deux tables différentes ?
Et merci pour ton conseil pour PDO ou mysqli je vais y voir !
En fait, c'est normal que mysql_fetch_row te retourne un tableau.
Tu peux faire ta requête, $r_query = 'SELECT ...';
$r_res = mysql_query($r_query);
while($a_data = mysql_fetch_row($r_res))
{
echo $a_data['nom_champ'];
}
Ça te permet de parcourir chaque ligne des résultats retournés par ta requête.
En ce qui concerne ton souci avec la requête sur la table datas, est-ce que tu as bien un champ "w1name" ? Essaie de simuler cette requête depuis phpmyadmin pour voir le résultat donné !
Tu peux faire ta requête, $r_query = 'SELECT ...';
$r_res = mysql_query($r_query);
while($a_data = mysql_fetch_row($r_res))
{
echo $a_data['nom_champ'];
}
Ça te permet de parcourir chaque ligne des résultats retournés par ta requête.
En ce qui concerne ton souci avec la requête sur la table datas, est-ce que tu as bien un champ "w1name" ? Essaie de simuler cette requête depuis phpmyadmin pour voir le résultat donné !
Bon je viens de trouver mon erreur... dans ma table 'members' javais créer w1name sous la valeur 'DefautName1' et dans la pour la compagnie 'abcd' tandis que dans la table 'datas' la valeur de w1name pour la compagnie 'abcd' était 'DefaultName1' ...
et effectivement je crois que faire un while serait beaucoup plus efficace je vais essayer ça et je vous met le code lorsque c'est fait pour les curieux ; )
Un gros merci pour votre aide !
et effectivement je crois que faire un while serait beaucoup plus efficace je vais essayer ça et je vous met le code lorsque c'est fait pour les curieux ; )
Un gros merci pour votre aide !
$query2 = "SELECT 'w1name' FROM 'members' WHERE 'Company' = '".$Company."'";
$result2 = mysql_query($query2) or die ("Error in query: $query. " . mysql_error());
$data2 = (mysql_fetch_array($result2));
$w1 = $data2['w1name'];
$query = "SELECT * FROM 'datas' WHERE 'Company' = '".$Company."' AND 'w1name' = '".$w1."'";
$result = mysql_query($query) or die ("Error in query: $query. " . mysql_error());
while($data = mysql_fetch_array($result)){
$w1name = $w1;
$w1BBMon1 = $data['w1BBMon1'];
$w1SalesMon1 = $data['w1SalesMon1'];
$w1HoursMon1 = $data['w1HoursMon1'];
etc...
}
Merci !
$result2 = mysql_query($query2) or die ("Error in query: $query. " . mysql_error());
$data2 = (mysql_fetch_array($result2));
$w1 = $data2['w1name'];
$query = "SELECT * FROM 'datas' WHERE 'Company' = '".$Company."' AND 'w1name' = '".$w1."'";
$result = mysql_query($query) or die ("Error in query: $query. " . mysql_error());
while($data = mysql_fetch_array($result)){
$w1name = $w1;
$w1BBMon1 = $data['w1BBMon1'];
$w1SalesMon1 = $data['w1SalesMon1'];
$w1HoursMon1 = $data['w1HoursMon1'];
etc...
}
Merci !