[PHP] If avec variable SQL
Fermé
MaisOuais
-
18 mai 2009 à 16:27
Mais.Ouais Messages postés 9 Date d'inscription lundi 18 mai 2009 Statut Membre Dernière intervention 14 août 2009 - 19 mai 2009 à 11:08
Mais.Ouais Messages postés 9 Date d'inscription lundi 18 mai 2009 Statut Membre Dernière intervention 14 août 2009 - 19 mai 2009 à 11:08
A voir également:
- [PHP] If avec variable SQL
- Easy php - Télécharger - Divers Web & Internet
- Retour a la ligne php ✓ - Forum PHP
- Sql lister les tables ✓ - Forum Programmation
- Blob sql ✓ - Forum Webmastering
12 réponses
bonjour
$donnees['os'] et $donnees['OS'] sont deux variables différentes
au passage, echo "Windows_2000"; et non pas echo Windows_2000;
(sauf si tu as effectivement défini une constante avec define ("Windows_2000","Windows_2000");
$donnees['os'] et $donnees['OS'] sont deux variables différentes
au passage, echo "Windows_2000"; et non pas echo Windows_2000;
(sauf si tu as effectivement défini une constante avec define ("Windows_2000","Windows_2000");
Yorundr
Messages postés
289
Date d'inscription
mardi 31 octobre 2006
Statut
Membre
Dernière intervention
11 juin 2012
44
18 mai 2009 à 16:29
18 mai 2009 à 16:29
Bonjour,
oui il n'y a pas de soucis. Ton code ne fonctionne pas ?
oui il n'y a pas de soucis. Ton code ne fonctionne pas ?
2napot
Messages postés
29
Date d'inscription
lundi 2 février 2009
Statut
Membre
Dernière intervention
18 mai 2009
18 mai 2009 à 16:30
18 mai 2009 à 16:30
SVP, plus d'explication
Mais.Ouais
Messages postés
9
Date d'inscription
lundi 18 mai 2009
Statut
Membre
Dernière intervention
14 août 2009
3
18 mai 2009 à 16:38
18 mai 2009 à 16:38
j ai envoyé le message non complet, mauvais clique entre envoyer et prévu
donc en fait mon code fonctionne mais pas comme je le souhaiterais ce qui veut dire que j ai une erreur
car en resultat j ai ca
Nom du Poste : test
OS : Windows_2000
1
Nom du Poste : TESTLGLPI
OS : Windows_2000
1
ce qui n est pas logique quand je lui demande d afficher la variable il me dit qu elle vaut "1" alors qu il prend bien le IF qui est pour une valeur de zero
dans ma BDD l ID OS est de "1" ce qui veut dire qu il m affiche la bonne valeur mais pour le If cela reste un mystere car lorsque je met ==1 cela ne m affiche plus rien
le IF n est qu un test car par la suitre le voudrais que cette variable soit utiliser pour recupéré le Nom grace a une autre Table
donc en fait mon code fonctionne mais pas comme je le souhaiterais ce qui veut dire que j ai une erreur
car en resultat j ai ca
Nom du Poste : test
OS : Windows_2000
1
Nom du Poste : TESTLGLPI
OS : Windows_2000
1
ce qui n est pas logique quand je lui demande d afficher la variable il me dit qu elle vaut "1" alors qu il prend bien le IF qui est pour une valeur de zero
dans ma BDD l ID OS est de "1" ce qui veut dire qu il m affiche la bonne valeur mais pour le If cela reste un mystere car lorsque je met ==1 cela ne m affiche plus rien
le IF n est qu un test car par la suitre le voudrais que cette variable soit utiliser pour recupéré le Nom grace a une autre Table
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
2napot
Messages postés
29
Date d'inscription
lundi 2 février 2009
Statut
Membre
Dernière intervention
18 mai 2009
18 mai 2009 à 16:45
18 mai 2009 à 16:45
essaye =="1"
peut être c'est enregistré en tant que chaîne dans votre BD
peut être c'est enregistré en tant que chaîne dans votre BD
Mais.Ouais
Messages postés
9
Date d'inscription
lundi 18 mai 2009
Statut
Membre
Dernière intervention
14 août 2009
3
18 mai 2009 à 16:53
18 mai 2009 à 16:53
non cela ne change rien, ce que je n arrive pas a comprendre c est pourquoi la variable $donnees me donne bien 1 quand elle s affiche avec un simple echo alors qu elle n est pas "==1" dans la condition IF
si sa peut aidée j explique le lien avec la BDD
donc j ai une BDD avec tout plein de table , rien de plus normale en fait
4 table m interresse ,
la 1er qui répertorie les PC du parc ( ID name os serial location domain network model etc ...)
sur celle ci je ne m intéresse juste au nom et domaine
-le nom est donné en charactere donc pas de souci
-le domaine et donnée par un chiffre qui renvoie sur l ID d une autre table ou sont renseigné les different domaine
-c est exactement le meme chose pour les OS
et c est la même chose pour ce qui est des logiciel ID poste a tels ou tels ID software d installé et je doit mettre tout ceci en commum pour avoir un beau tableau ou l ont poura simplement tout ceci
j espère avoir été assé clair
merci pour votre aide
si sa peut aidée j explique le lien avec la BDD
donc j ai une BDD avec tout plein de table , rien de plus normale en fait
4 table m interresse ,
la 1er qui répertorie les PC du parc ( ID name os serial location domain network model etc ...)
sur celle ci je ne m intéresse juste au nom et domaine
-le nom est donné en charactere donc pas de souci
-le domaine et donnée par un chiffre qui renvoie sur l ID d une autre table ou sont renseigné les different domaine
-c est exactement le meme chose pour les OS
et c est la même chose pour ce qui est des logiciel ID poste a tels ou tels ID software d installé et je doit mettre tout ceci en commum pour avoir un beau tableau ou l ont poura simplement tout ceci
j espère avoir été assé clair
merci pour votre aide
Mais.Ouais
Messages postés
9
Date d'inscription
lundi 18 mai 2009
Statut
Membre
Dernière intervention
14 août 2009
3
18 mai 2009 à 17:11
18 mai 2009 à 17:11
Ha mais quel boulet je fait, une aprem de prise de tete pour une erreur toute simple , c été bien les MAJ.
une simple relecture par un autre suffit a le voir, merci beaucoup
peut on faire une requete SQL vers une autre table a l intérieure du "if" ?
une simple relecture par un autre suffit a le voir, merci beaucoup
peut on faire une requete SQL vers une autre table a l intérieure du "if" ?
Mais.Ouais
Messages postés
9
Date d'inscription
lundi 18 mai 2009
Statut
Membre
Dernière intervention
14 août 2009
3
18 mai 2009 à 17:31
18 mai 2009 à 17:31
ba je debute en PhP donc je posait la question vu que je vais testé mais comme cela ne va pas marché du 1er coup bien évidement la je suis sur que c est possible et que l erreur viens de moi
Un conseil sinon: évite les SELECT *, mets plutôt les champs de ton choix (question de performance et de bonnes habitudes de programmation).
Un conseil sinon: évite les SELECT *, mets plutôt les champs de ton choix (question de performance et de bonnes habitudes de programmation).
Mais.Ouais
Messages postés
9
Date d'inscription
lundi 18 mai 2009
Statut
Membre
Dernière intervention
14 août 2009
3
19 mai 2009 à 11:08
19 mai 2009 à 11:08
<?php
mysql_connect("localhost", "root", ""); //log de connexion a serveur SQL
mysql_select_db("GLPI"); //choix de la BDD
$reponse = mysql_query("SELECT * FROM glpi_computers ORDER BY domain")or die(mysql_error()); //choix de la table
while ($donnees = mysql_fetch_array($reponse) ) //$donnees recupere toute les info de la table
{
?>
<p>
<strong>Nom du Poste</strong> : <?php echo $donnees['name']; // affiche le nom du poste ?><br />
<strong> OS </strong> : <?php $osid = $donnees['os']; //donne a $os l ID de l'OS du poste ?>
<?php
if ($osid > 0 )
{
$os = mysql_query("SELECT name FROM glpi_dropdown_os") or die(mysql_error()); // recherhe dans la table des OS
while( $donneesos = mysql_fetch_array($os) )
{
echo $donneesos['name']; // affiche le nom de l OS
}
}
?><strong><?php echo $osid; ?><br /></strong>
<strong>Domaine</strong> : <?php $domaineid = $donnees['domain']; // fait de meme avec le nom de domaine
echo $domaineid; ?>
</p>
<?php
}
mysql_close(); // Déconnexion de MySQL
?>
voici ce que ca donne
https://imageshack.com/
mysql_connect("localhost", "root", ""); //log de connexion a serveur SQL
mysql_select_db("GLPI"); //choix de la BDD
$reponse = mysql_query("SELECT * FROM glpi_computers ORDER BY domain")or die(mysql_error()); //choix de la table
while ($donnees = mysql_fetch_array($reponse) ) //$donnees recupere toute les info de la table
{
?>
<p>
<strong>Nom du Poste</strong> : <?php echo $donnees['name']; // affiche le nom du poste ?><br />
<strong> OS </strong> : <?php $osid = $donnees['os']; //donne a $os l ID de l'OS du poste ?>
<?php
if ($osid > 0 )
{
$os = mysql_query("SELECT name FROM glpi_dropdown_os") or die(mysql_error()); // recherhe dans la table des OS
while( $donneesos = mysql_fetch_array($os) )
{
echo $donneesos['name']; // affiche le nom de l OS
}
}
?><strong><?php echo $osid; ?><br /></strong>
<strong>Domaine</strong> : <?php $domaineid = $donnees['domain']; // fait de meme avec le nom de domaine
echo $domaineid; ?>
</p>
<?php
}
mysql_close(); // Déconnexion de MySQL
?>
voici ce que ca donne
https://imageshack.com/