[PHP / MySQL] problème
Fermé
LeHigh
-
11 mai 2009 à 11:42
Dr Zoidberg Messages postés 529 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 12 juin 2015 - 12 mai 2009 à 09:43
Dr Zoidberg Messages postés 529 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 12 juin 2015 - 12 mai 2009 à 09:43
Bonjour,
Dans l'entreprise ou je suis en stage, ils ont migré leur site web de gestion du parc informatique sur un autre serveur.
Sur le 1er tout marche évidemment niquel, mais sur le second, il y a des bugs, c'est à dire que les requêtes ne fonctionnement plus, lorsque je fait une recherche, ça renvoie tout les résultats contenus dans la BDD (pas d'erreur SQL ni rien ...).
Du 1er au second serveur, les versions de phpMyAdmin et de MySQL ont été mises à jour, ca pourrait venir de la ?
Dans l'entreprise ou je suis en stage, ils ont migré leur site web de gestion du parc informatique sur un autre serveur.
Sur le 1er tout marche évidemment niquel, mais sur le second, il y a des bugs, c'est à dire que les requêtes ne fonctionnement plus, lorsque je fait une recherche, ça renvoie tout les résultats contenus dans la BDD (pas d'erreur SQL ni rien ...).
Du 1er au second serveur, les versions de phpMyAdmin et de MySQL ont été mises à jour, ca pourrait venir de la ?
A voir également:
- [PHP / MySQL] problème
- Easy php - Télécharger - Divers Web & Internet
- Mysql community server - Télécharger - Bases de données
- Expert php pinterest - Télécharger - Langages
- Alert php ✓ - Forum PHP
- Php alert - Forum PHP
6 réponses
bizu53
Messages postés
1274
Date d'inscription
samedi 30 août 2008
Statut
Membre
Dernière intervention
21 juin 2015
861
11 mai 2009 à 12:04
11 mai 2009 à 12:04
Ça se pourrait ouais.
Dr Zoidberg
Messages postés
529
Date d'inscription
jeudi 28 juin 2007
Statut
Membre
Dernière intervention
12 juin 2015
100
11 mai 2009 à 12:11
11 mai 2009 à 12:11
Salut,
Je ne vois pas le rapport avec phpmysqlmyadmin, mais avec mySQL pourquoi pas, mais difficile de répondre comme ca, on manque de détails:
- L'application, c'est une appli développée en interne, en quel langage ? as t il été mis à jour aussi ?
- Mysql a été migré de quelle version vers quelle version ?
- Est il possible d'avoir un exemple de requête passée à la bd (si l'appli a été développée)
Je ne vois pas le rapport avec phpmysqlmyadmin, mais avec mySQL pourquoi pas, mais difficile de répondre comme ca, on manque de détails:
- L'application, c'est une appli développée en interne, en quel langage ? as t il été mis à jour aussi ?
- Mysql a été migré de quelle version vers quelle version ?
- Est il possible d'avoir un exemple de requête passée à la bd (si l'appli a été développée)
L'appli c'est un site web, donc PHP, CSS etc ...
MySQL a été migré de la version 4.0.17 à la 5.0.24 (sur un serveur linux)
pour un exemple de requete voila:
$req = "SELECT * FROM micro WHERE ref_m=".$select;
$result = mysql_query($req);
while ($ligne = mysql_fetch_array($result)) {
$ref_m = $ligne[0];
$num_m = $ligne[1];
$serv = '<b>'.$ligne[2].'</b>';
$unit = '<b>'.$ligne[3].'</b>';
$nom = '<b>'.$ligne[4].'</b>';
$res = '<b>'.$ligne[5].'</b>';
$com = '<b>'.$ligne[6].'</b>';
$ref_uc = $ligne[7];
$ref_e = $ligne[8];
$ref_ip = $ligne[9];
$ref_p1 = $ligne[10];
$ref_p2 = $ligne[11];
$materiel = '<b>'.$ligne[12].'</b>';
$ghost = '<b>'.$ligne[13].'</b>';
$d_ghost = '<b>'.$ligne[14].'</b>';
}
c'est censé filtrer les résultats, sauf que ça affiche tout :/, mais ca marche sur le serveur windows
merci :)
MySQL a été migré de la version 4.0.17 à la 5.0.24 (sur un serveur linux)
pour un exemple de requete voila:
$req = "SELECT * FROM micro WHERE ref_m=".$select;
$result = mysql_query($req);
while ($ligne = mysql_fetch_array($result)) {
$ref_m = $ligne[0];
$num_m = $ligne[1];
$serv = '<b>'.$ligne[2].'</b>';
$unit = '<b>'.$ligne[3].'</b>';
$nom = '<b>'.$ligne[4].'</b>';
$res = '<b>'.$ligne[5].'</b>';
$com = '<b>'.$ligne[6].'</b>';
$ref_uc = $ligne[7];
$ref_e = $ligne[8];
$ref_ip = $ligne[9];
$ref_p1 = $ligne[10];
$ref_p2 = $ligne[11];
$materiel = '<b>'.$ligne[12].'</b>';
$ghost = '<b>'.$ligne[13].'</b>';
$d_ghost = '<b>'.$ligne[14].'</b>';
}
c'est censé filtrer les résultats, sauf que ça affiche tout :/, mais ca marche sur le serveur windows
merci :)
P@t@ch0n
Messages postés
565
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
28 décembre 2009
85
12 mai 2009 à 08:55
12 mai 2009 à 08:55
Que vaut $select ?
freto
Messages postés
1543
Date d'inscription
vendredi 6 juillet 2007
Statut
Membre
Dernière intervention
8 avril 2016
162
12 mai 2009 à 09:04
12 mai 2009 à 09:04
Bonjour.
Dans le doute, quand on fait des requetes de type select, il faut veiller à encadrer ce qui se trouve après un = entre ' ' . Ce qui donnerais pour ta requete:
Avec ça, sa devrait être un tantinet mieux.
Dans le doute, quand on fait des requetes de type select, il faut veiller à encadrer ce qui se trouve après un = entre ' ' . Ce qui donnerais pour ta requete:
$req = "SELECT * FROM micro WHERE ref_m='$select'";
Avec ça, sa devrait être un tantinet mieux.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
en fait j'ai noober sur le coup, comme c'est pas mon code je me suis planté de fichier :D
le code:
if ($idconnect) {
$ok = false;
$ip = false;
$name = $nom_util;
if ($num_uc != "")
{
$num_uc = "AND micro.num_uc LIKE '%".$num_uc."%' "; $ok = true;
}
if ($garantie_uc != "") { $garantie_uc = "AND uc.garantie_uc LIKE '".$garantie_uc."' "; $ok = true; }
if ($marque_uc != "") { $marque_uc = "AND uc.marque_uc LIKE '".$marque_uc."' "; $ok = true; }
if ($date_ach_uc != "") { $date_ach_uc = "AND uc.date_ach_uc LIKE '".$date_ach_uc."' "; $ok = true; }
if ($type_uc != "") { $type_uc = "AND uc.type_uc LIKE '".$type_uc."' "; $ok = true; }
if ($date_affect_uc != "") { $date_affect_uc = "AND uc.date_affect_uc LIKE '".$date_affect_uc."' "; $ok = true; }
if ($num_inv_uc != "") { $num_inv_uc = "AND uc.num_inv_uc LIKE '".$num_inv_uc."' "; $ok = true; }
if ($num_serie_uc != "") { $num_serie_uc = "AND uc.num_serie_uc LIKE '".$num_serie_uc."' "; $ok = true; }
if ($materiel != "") { $materiel = "AND micro.materiel LIKE '".$materiel."' "; $ok = true; }
if ($nom_util != "") { $nom_user = "AND micro.nom_util LIKE '%".$nom_util."%'"; $ok = true; }
if ($service != "") { $service = "AND micro.service LIKE '".$service."' "; $ok = true; }
if ($unite != "") { $unite = "AND micro.unite LIKE '".$unite."' "; $ok = true; }
if ($marque_ecran != "") { $marque_ecran = "AND ecran.marque_ecran LIKE '".$marque_ecran."' "; $ok = true; $ecr = true; }
if ($garantie_ecran != "") { $garantie_ecran = "AND ecran.garantie_ecran LIKE '".$garantie_ecran."' "; $ok = true; $ecr = true; }
if ($type_ecran != "") { $type_ecran = "AND ecran.type_ecran = '".$type_ecran."' "; $ok = true; $ecr = true; }
if ($date_ach_ecran != "") { $date_ach_ecran = "AND ecran.date_ach_ecran LIKE '".$date_ach_ecran."' "; $ok = true; $ecr = true; }
if ($num_inv_ecran != "") { $num_inv_ecran = "AND ecran.num_inv_ecran LIKE '".$num_inv_ecran."' "; $ok = true; $ecr = true; }
if ($date_affect_ecran != "") { $date_affect_ecran = "AND ecran.date_affect_ecran LIKE '".$date_affect_ecran."' "; $ok = true; $ecr = true; }
if ($num_serie_ecran != "") { $num_serie_ecran = "AND ecran.num_serie_ecran LIKE '".$num_serie_ecran."' "; $ok = true; $ecr = true; }
if ($cpu != "") { $cpu = "AND uc.cpu LIKE '".$cpu."' "; $ok = true; }
if ($cad_cpu != "") { $cad_cpu = "AND uc.cad_cpu LIKE '".$cad_cpu."' "; $ok = true; }
if ($ram != "") { $ram = "AND uc.ram LIKE '".$ram."' "; $ok = true; }
if ($dram != "") { $dram = "AND uc.dram_uc LIKE '".$dram."' "; $ok = true; }
if ($dd != "") { $dd = "AND uc.dd LIKE '".$dd."' "; $ok = true; }
if ($se != "") { $se = "AND uc.se LIKE '".$se."' "; $ok = true; }
if ($lecteur != "") { $lecteur = "AND uc.lecteur LIKE '".$lecteur."' "; $ok = true; }
if ($dao != "") { $dao = "AND uc.dao LIKE '".$dao."' "; $ok = true; }
if ($adr_ip != "") { $adr_ip = "AND ip.ip LIKE '".$adr_ip."' "; $ok = true; $ip=true; }
if ($dns != "") { $dns = "AND ip.dns LIKE '".$dns."' "; $ok = true; $ip=true; }
if ($masque != "") { $masque = "AND ip.masque LIKE '".$masque."' "; $ok = true; $ip=true; }
if ($wins != "") { $wins = "AND ip.wins LIKE '".$wins."' "; $ok = true; $ip=true; }
if ($passerelle != "") { $passerelle = "AND ip.passerelle LIKE '".$passerelle."' "; $ok = true; $ip=true; }
if ($date_d = "") { $date_d = "%"; }
if ($date_f = "") { $date_f = "%"; }
if ($ok == true ) { // Si au moins un des critères a été renseigné
$req = "SELECT * FROM micro, uc "; // Création de la requête avec les table micro, uc et ecran
if ($ip == true) { // Ajout de la table IP dans la requête
$req .= ", ip ";
}
if ($ecr == true) {
$req .= ", ecran ";
}
$req .= "WHERE micro.ref_uc = uc.ref_uc "; // Jointures
if ($ip == true) { // Ajout des champs IP, DNS, PSRL, DNS et WINS de la table IP dans la requête + jointure avec la table IP
$req .= "AND micro.ref_ip = ip.ref_ip ";
$req .= $adr_ip." ";
$req .= $masque." ";
$req .= $passerelle." ";
$req .= $dns." ";
$req .= $wins." ";
}
if ($ecr == true) {
$req .= "AND micro.ref_ecran = ecran.ref_ecran ";
$req .= $marque_ecran." ";
$req .= $type_ecran." ";
$req .= $garantie_ecran." ";
$req .= $num_inv_ecran." ";
$req .= $num_serie_ecran." ";
$req .= $date_ach_ecran." ";
$req .= $date_affect_ecran." ";
}
$req .= $num_uc." ";
$req .= $nom_user." ";
$req .= $service." ";
$req .= $unite." ";
$req .= $materiel." ";
$req .= $marque_uc." ";
$req .= $type_uc." ";
$req .= $num_inv_uc." ";
$req .= $num_serie_uc." ";
$req .= $date_ach_uc." ";
$req .= $date_affect_uc." ";
$req .= $garantie_uc." ";
$req .= $cpu." ";
$req .= $cad_cpu." ";
$req .= $dd." ";
$req .= $ram." ";
$req .= $dram." ";
$req .= $lecteur." ";
$req .= $se." ";
$req .= $dao." ";
$req .= "ORDER BY micro.num_uc";
} else { // Sinon, sélection de l'ensemble des micros
$req = "SELECT * FROM micro, uc WHERE micro.ref_uc = uc.ref_uc ORDER BY num_uc";
}
mais je pense pas que ça vienne du code, puisque lors du changement de serveur, ils ont juste fait un copié collé, et le site marche niquel sur le serveur windows, peut être que Linux aime pas certains trucs ?
le code:
if ($idconnect) {
$ok = false;
$ip = false;
$name = $nom_util;
if ($num_uc != "")
{
$num_uc = "AND micro.num_uc LIKE '%".$num_uc."%' "; $ok = true;
}
if ($garantie_uc != "") { $garantie_uc = "AND uc.garantie_uc LIKE '".$garantie_uc."' "; $ok = true; }
if ($marque_uc != "") { $marque_uc = "AND uc.marque_uc LIKE '".$marque_uc."' "; $ok = true; }
if ($date_ach_uc != "") { $date_ach_uc = "AND uc.date_ach_uc LIKE '".$date_ach_uc."' "; $ok = true; }
if ($type_uc != "") { $type_uc = "AND uc.type_uc LIKE '".$type_uc."' "; $ok = true; }
if ($date_affect_uc != "") { $date_affect_uc = "AND uc.date_affect_uc LIKE '".$date_affect_uc."' "; $ok = true; }
if ($num_inv_uc != "") { $num_inv_uc = "AND uc.num_inv_uc LIKE '".$num_inv_uc."' "; $ok = true; }
if ($num_serie_uc != "") { $num_serie_uc = "AND uc.num_serie_uc LIKE '".$num_serie_uc."' "; $ok = true; }
if ($materiel != "") { $materiel = "AND micro.materiel LIKE '".$materiel."' "; $ok = true; }
if ($nom_util != "") { $nom_user = "AND micro.nom_util LIKE '%".$nom_util."%'"; $ok = true; }
if ($service != "") { $service = "AND micro.service LIKE '".$service."' "; $ok = true; }
if ($unite != "") { $unite = "AND micro.unite LIKE '".$unite."' "; $ok = true; }
if ($marque_ecran != "") { $marque_ecran = "AND ecran.marque_ecran LIKE '".$marque_ecran."' "; $ok = true; $ecr = true; }
if ($garantie_ecran != "") { $garantie_ecran = "AND ecran.garantie_ecran LIKE '".$garantie_ecran."' "; $ok = true; $ecr = true; }
if ($type_ecran != "") { $type_ecran = "AND ecran.type_ecran = '".$type_ecran."' "; $ok = true; $ecr = true; }
if ($date_ach_ecran != "") { $date_ach_ecran = "AND ecran.date_ach_ecran LIKE '".$date_ach_ecran."' "; $ok = true; $ecr = true; }
if ($num_inv_ecran != "") { $num_inv_ecran = "AND ecran.num_inv_ecran LIKE '".$num_inv_ecran."' "; $ok = true; $ecr = true; }
if ($date_affect_ecran != "") { $date_affect_ecran = "AND ecran.date_affect_ecran LIKE '".$date_affect_ecran."' "; $ok = true; $ecr = true; }
if ($num_serie_ecran != "") { $num_serie_ecran = "AND ecran.num_serie_ecran LIKE '".$num_serie_ecran."' "; $ok = true; $ecr = true; }
if ($cpu != "") { $cpu = "AND uc.cpu LIKE '".$cpu."' "; $ok = true; }
if ($cad_cpu != "") { $cad_cpu = "AND uc.cad_cpu LIKE '".$cad_cpu."' "; $ok = true; }
if ($ram != "") { $ram = "AND uc.ram LIKE '".$ram."' "; $ok = true; }
if ($dram != "") { $dram = "AND uc.dram_uc LIKE '".$dram."' "; $ok = true; }
if ($dd != "") { $dd = "AND uc.dd LIKE '".$dd."' "; $ok = true; }
if ($se != "") { $se = "AND uc.se LIKE '".$se."' "; $ok = true; }
if ($lecteur != "") { $lecteur = "AND uc.lecteur LIKE '".$lecteur."' "; $ok = true; }
if ($dao != "") { $dao = "AND uc.dao LIKE '".$dao."' "; $ok = true; }
if ($adr_ip != "") { $adr_ip = "AND ip.ip LIKE '".$adr_ip."' "; $ok = true; $ip=true; }
if ($dns != "") { $dns = "AND ip.dns LIKE '".$dns."' "; $ok = true; $ip=true; }
if ($masque != "") { $masque = "AND ip.masque LIKE '".$masque."' "; $ok = true; $ip=true; }
if ($wins != "") { $wins = "AND ip.wins LIKE '".$wins."' "; $ok = true; $ip=true; }
if ($passerelle != "") { $passerelle = "AND ip.passerelle LIKE '".$passerelle."' "; $ok = true; $ip=true; }
if ($date_d = "") { $date_d = "%"; }
if ($date_f = "") { $date_f = "%"; }
if ($ok == true ) { // Si au moins un des critères a été renseigné
$req = "SELECT * FROM micro, uc "; // Création de la requête avec les table micro, uc et ecran
if ($ip == true) { // Ajout de la table IP dans la requête
$req .= ", ip ";
}
if ($ecr == true) {
$req .= ", ecran ";
}
$req .= "WHERE micro.ref_uc = uc.ref_uc "; // Jointures
if ($ip == true) { // Ajout des champs IP, DNS, PSRL, DNS et WINS de la table IP dans la requête + jointure avec la table IP
$req .= "AND micro.ref_ip = ip.ref_ip ";
$req .= $adr_ip." ";
$req .= $masque." ";
$req .= $passerelle." ";
$req .= $dns." ";
$req .= $wins." ";
}
if ($ecr == true) {
$req .= "AND micro.ref_ecran = ecran.ref_ecran ";
$req .= $marque_ecran." ";
$req .= $type_ecran." ";
$req .= $garantie_ecran." ";
$req .= $num_inv_ecran." ";
$req .= $num_serie_ecran." ";
$req .= $date_ach_ecran." ";
$req .= $date_affect_ecran." ";
}
$req .= $num_uc." ";
$req .= $nom_user." ";
$req .= $service." ";
$req .= $unite." ";
$req .= $materiel." ";
$req .= $marque_uc." ";
$req .= $type_uc." ";
$req .= $num_inv_uc." ";
$req .= $num_serie_uc." ";
$req .= $date_ach_uc." ";
$req .= $date_affect_uc." ";
$req .= $garantie_uc." ";
$req .= $cpu." ";
$req .= $cad_cpu." ";
$req .= $dd." ";
$req .= $ram." ";
$req .= $dram." ";
$req .= $lecteur." ";
$req .= $se." ";
$req .= $dao." ";
$req .= "ORDER BY micro.num_uc";
} else { // Sinon, sélection de l'ensemble des micros
$req = "SELECT * FROM micro, uc WHERE micro.ref_uc = uc.ref_uc ORDER BY num_uc";
}
mais je pense pas que ça vienne du code, puisque lors du changement de serveur, ils ont juste fait un copié collé, et le site marche niquel sur le serveur windows, peut être que Linux aime pas certains trucs ?
Dr Zoidberg
Messages postés
529
Date d'inscription
jeudi 28 juin 2007
Statut
Membre
Dernière intervention
12 juin 2015
100
12 mai 2009 à 09:43
12 mai 2009 à 09:43
La version de PHP a t elle changée ? si oui le problème peut etre ici.
D'où viennent toutes les variables, comme $num_uc, $cpu ... ?
Pour tester, essai de rajouter
tout au début de la page.
D'où viennent toutes les variables, comme $num_uc, $cpu ... ?
Pour tester, essai de rajouter
error_reporting(E_ALL);
tout au début de la page.