Problème de requette SQL en PHP

Résolu
bonsoir,

J'ai un petit souci avec ma requette, j'ai pourtant suivie les informations du net mais rien à faire cela ne marche pas, mon serveur "localhost" me dis qu'il est ready mais bon.
Si quelqu'un sait si ma requette contient une erreure merci de me le dire^^

<?
//connexion à la base
$db = mysql_connect('localhost','houdyerpierre','vii2s8di') or die ('erreur de connexion');
//sélection de la base
mysql_select_db('test',$db);
//J'envoie la requête
$db=mysql_query("select * from caract_avions where (type) = 'CHASSE EMBARQUEE'");
//on ferme la connexion
mysql_close('localhost','houdyerpierre','vii2s8di');
?>

Pour préciser, mon mp: vii2s8di, Username: houdyerpierre, hostname: localhost, port :3306
Dans sql j'ai plusieurs fichiers dans "shemata" mon dossier s'appel test.
Voilà merci d'avance pour les réponses
Configuration: Windows XP
Internet Explorer 7.0

32 réponses

Résumé de la discussion

Problème de requête MySQL en local avec PHP: le serveur localhost affiche ready mais la requête ne s'exécute pas, malgré le code utilisant mysql_connect, mysql_select_db et une instruction SELECT. Les éléments essentiels en cause comprennent les paramètres de connexion, la sélection de la base 'test', l'appel à mysql_query avec une condition sur le champ type et la fermeture incorrecte de la connexion. Des réponses recommandent de construire et tester les requêtes directement dans PHPMyAdmin ou d'exporter le SQL puis de l'exécuter sur le serveur distant afin d'isoler l'erreur. Pour gagner en robustesse, certains suggèrent d'éviter mysql_close avec des paramètres et d'envisager une migration vers PDO ou MySQLi, tout en vérifiant l'existence et les noms de la base et des tables.

Bobot (l’IA à votre service)
  1. Contributeur
    regarde le tuto que je t'ai indiqué, Cyberzoïde en a aussi écrit un autre sur MySQL.
    et pour les requêtes, conçoit les et teste les dans PHPMyAdmin avant de les inclure à ton script, le débogueur est bien pratique.
    1. Oui c'est assé bien le formulaire..
      Le probleme c'est que quand je l'enregistre en PHP et que je le lis il me met du code au dessus et tout n'est pas bien aligné...
      Tu as Skype ?
      1. Contributeur
        faut un début à tout !

        le mieux est de valider ton site à chaque pas pour produire du HTML de qualité.

        dans un premier temps, vire tous les Javascripts et autres gadgets.
        il faut absolument avoir un HTML clean pour pouvoir envisager sereinement la suite.
        si tu pars avec un code crado fait pas DW ça va vite devenir infaisable quand tu ajouteras des fonctionnalités.

        et pour le style, il faut utiliser CSS, bien séparé contenu et présentation c'est aussi une des bases pour attaquer le reste tranquille.
        1. LOL j'avais trouvé lol,
          tient je te passe le début de mon site..

          http://houdyerp.kanahr.net/premierepage.html
          Mais bon il est vite arreté a cause des enregistrement car il faut que je fasse toutes les requettes et comme tu la si bien dit je part de loin^^
          1. L'extention ad hoc ??
            Oui je me sert de DW pour certaine fonction mais tout n'est pas de DW (heureusement)^^
            1. Contributeur
              oulalalaaaa !
              mais on part de loin !
              -;o)

              t as page HTML contient deux <head> (dont un mal fermé) et deux <body>. c'est déjà un miracle que quelque chose s'affiche !
              ça fleure bon le code pondu par DW…

              pour débuter tu devrais te concentrer sur le contenu et produire des pages valides. tu ajouteras les bricoles au fur et à mesure.

              une version qui doit être valide (et encore il faudrait coder les bannière autrement) et qui affiche la date :
              <?php
              	setlocale( LC_TIME, "fr" );
              ?>
              <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
              <html lang="fr" xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
              	<head>
              		<title>Ba-gestion</title>
              
              		<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
              		<meta http-equiv="content-language" content="fr" />
              	</head>
              
              	<body>
              	<div>
              		<p><img src="http://houdyerp.kanahr.net/img/imageba/bannniere1.PNG" width="225" height="103"></p>
              		<h1>Bienvenue sur ba-gestion</h1>
              		<p><img src="http://houdyerp.kanahr.net/img/imageba/banniere2.PNG" width="280" height="102"></p>
              	</div>
              	<p>Gérer votre propre base aérienne	gratuitement!</p>
              	<p>Bienvenue Sur Ba-gestion.com,<br />premier jeu en ligne de gestion d’une Base aérienne.</p>
              	<p>Nous sommes le <?php echo( strftime( '%A %d %b %Y' , time() ); ?></p>
              	</body> 
              </html>

              mais c'est du PHP ! il faut l'enregistrer avec l'extension ad hoc !
              toute la mise en page il faut la mettre dans une feuille de style (CSS).

              PS : pense à utiliser ce bouton pour présenter le code.
              1. Je te mets le debut jusqu'au code où j'ai placé ma date (c'est assé long^^) :

                <html>
                <head>
                <title>Ba-gestion</title>
                <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
                <script language="JavaScript" type="text/JavaScript">
                <!--
                function MM_reloadPage(init) { //reloads the window if Nav4 resized
                if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
                document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
                else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
                }
                MM_reloadPage(true);
                <head>
                //-->
                </script>
                </head>

                <body>
                <div align="center"><br>
                <img src="http://houdyerp.kanahr.net/img/imageba/bannniere1.PNG" width="225" height="103"><font color="#006666" size="+3" face="Courier New, Courier, mono">Bienvenue
                sur ba-gestion</font><img src="http://houdyerp.kanahr.net/img/imageba/banniere2.PNG" width="280" height="102"></div>
                <p> </p>
                <p align="center"><font color="#009966"><strong>Gérer votre propre base aérienne
                gratuitement!</strong></font></p>
                <p align="center"><font color="#003399"><u>Bienvenue Sur Ba-gestion.com,</u></font></p>
                <p align="center"><font color="#003399"><u>premier jeu en ligne de gestion d’une Base aérienne.</u></font> </p>
                <p align="left">Nous sommes le
                <head>
                <!-- DEBUT DU SCRIPT DATE -->
                <script language="JavaScript">

                function VersionNavigateur(Netscape, Explorer) {
                if ((navigator.appVersion.substring(0,3) >= Netscape && navigator.appName == 'Netscape') ||
                (navigator.appVersion.substring(0,3) >= Explorer && navigator.appName.substring(0,9) == 'Microsoft'))
                return true;
                else return false;
                }
                function Semaine(){
                this[0] = "Dimanche"; this[1] = "Lundi";
                this[2] = "Mardi"; this[3] = "Mercredi";
                this[4] = "Jeudi"; this[5] = "Vendredi";
                this[6] = "Samedi";
                }

                function Mois(){
                this[0] = "Janvier"; this[1] = "Février";
                this[2] = "Mars"; this[3] = "Avril";
                this[4] = "Mai"; this[5] = "Juin";
                this[6] = "Juillet"; this[7] = "Août";
                this[8] = "Septembre"; this[9] = "Octobre";
                this[10] = "Novembre"; this[11] = "Décembre";
                }
                today = new Date;
                function date(){
                var semaine=new Semaine();
                var mois=new Mois();
                var myDate=new Date();
                annee = today.getFullYear();

                var result=semaine[myDate.getDay()]+" "+myDate.getDate()+" "+mois[myDate.getMonth()]+" "+annee;
                document.writeln(result);
                }
                function openWin( windowURL, windowName, windowFeatures ) {
                return window.open( windowURL, windowName, windowFeatures ) ;
                } </script>
                <!-- FIN DU SCRIPT DATE -->

                </head
                <body>
                <!-- DEBUT DU SCRIPT DATE-->
                aujourd'hui nous sommes le <script language="JavaScript">date();</script>
                <!-- FIN DU SCRIPT DATE-->
                </body>

                PS : le monsieur s'appel Pierre lol
                1. Contributeur
                  mon code est à placer dans ton script PHP mais il faut l'adapter au contexte.
                  montre nous le bout de HTML où tu veux l'inclure.
                  1. Ton code doit surment être bon mais elle ne s'affiche plus du coup ^^
                    alala mdr,
                    Euh, tu as un code à toi qui affiche l'heure meme celle du bureau ?
                    Enfin j'ai trouvé pour la date, j'avais oublié le "/" de </body> mdr
                    1. Contributeur
                      heu…

                      si tu veux le temps serveur il faut travailler avec un script serveur (PHP) pas avec un script client (JS) sinon tu affiches l'heure de la machine (ce qui ne sert pas à grand chose…).
                      pour PHP :
                      setlocale( LC_TIME, "fr" );
                      echo( '<p>'.strftime( "%A %d %b %Y %T" , time() )."</p>\n" );
                      1. mais si tu utilise le localhoste la connexion à la base doit se faire la manière suivante :

                        mysql_connect('localhost','root','');

                        c'est à dire que le nom d'utilisateur doit être 'root' et le mot de passe vide ''

                        merci d'essayé
                        1. Contributeur
                          salut,

                          lol, lis avant de répondre…
                          -;o)

                          ce problème est résolu et de toute façon le monsieur il avait dit : "Pour préciser, mon mp: vii2s8di, Username: houdyerpierre, hostname: localhost, port :3306"
                      2. merci, pas de problème, (houdyerpierre sur skype et houdyerpierre@hotmail.com)

                        Et bien j'aimerais mettre la date et l'heure du serveur sur ma page..
                        mon code pour la date :

                        <!-- DEBUT DU SCRIPT DATE -->
                        <script language="JavaScript">

                        function VersionNavigateur(Netscape, Explorer) {
                        if ((navigator.appVersion.substring(0,3) >= Netscape && navigator.appName == 'Netscape') ||
                        (navigator.appVersion.substring(0,3) >= Explorer && navigator.appName.substring(0,9) == 'Microsoft'))
                        return true;
                        else return false;
                        }
                        function Semaine(){
                        this[0] = "Dimanche"; this[1] = "Lundi";
                        this[2] = "Mardi"; this[3] = "Mercredi";
                        this[4] = "Jeudi"; this[5] = "Vendredi";
                        this[6] = "Samedi";
                        }

                        function Mois(){
                        this[0] = "Janvier"; this[1] = "Février";
                        this[2] = "Mars"; this[3] = "Avril";
                        this[4] = "Mai"; this[5] = "Juin";
                        this[6] = "Juillet"; this[7] = "Août";
                        this[8] = "Septembre"; this[9] = "Octobre";
                        this[10] = "Novembre"; this[11] = "Décembre";
                        }
                        today = new Date;
                        function date(){
                        var semaine=new Semaine();
                        var mois=new Mois();
                        var myDate=new Date();
                        annee = today.getFullYear();

                        var result=semaine[myDate.getDay()]+" "+myDate.getDate()+" "+mois[myDate.getMonth()]+" "+annee;
                        document.writeln(result);
                        }
                        function openWin( windowURL, windowName, windowFeatures ) {
                        return window.open( windowURL, windowName, windowFeatures ) ;
                        } </script>
                        <!-- FIN DU SCRIPT DATE -->

                        et pour l'heure :

                        <!-- DEBUT SCRIPT HEURE DYNAMIQUE -->
                        <SCRIPT language=JavaScript>
                        <!--
                        function showFilled(Value) {
                        return (Value > 9) ? "" + Value : "0" + Value;
                        }
                        function StartClock24() {
                        TheTime = new Date;
                        document.clock.showTime.value = showFilled(TheTime.getHours()) + ":" + showFilled(TheTime.getMinutes()) + ":" + showFilled(TheTime.getSeconds());
                        setTimeout("StartClock24()",1000)
                        }
                        //-->
                        </SCRIPT>
                        <STYLE type=text/css>.input {
                        background: #FFEBCD; font-weight:bold; FONT-SIZE: 12pt; COLOR: #008000; BORDER-TOP-STYLE: none; FONT-FAMILY: Verdana,Arial,Helvetica,sans-serif; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
                        }
                        </STYLE>
                        <!-- FIN SCRIPT HEURE DYNAMIQUE -->
                        1. Contributeur
                          pou t aider pas de soucis, mais par contre ce serait mieux de jouer le jeu du forum : problème public, solution publique.
                          ça peut servir à d'autres !
                          -;o)

                          c'est quoi exactement le problème ?
                          1. ha tu pourais peut être m'aider, dans ma page HTML j'ai mis un code pour la date mais malheureusement elle ne se met pas à jour, elle reste à l'heure où je l'ai fixée..
                            J'ai skype (où même msn) se serai plus simple si ont comunicaient directement..
                            j'attend votre message.
                            1. Contributeur
                              oula non, je ne considère pas "m'y connaitre".
                              je travaille avec SQL depuis des années (avant avec VB.Net) mais je ne fais que des requêtes assez simples.
                              par contre j'essaie de faire travailler au maximum la bdd plutôt que le serveur PHP (les formatages de dates, les sommes…).
                              1. oui j'ai vue j'y ai aussi passé 2 heures à tous lire lol
                                Tu t'y connais bien en SQL ?
                                Cela fais combien de temps que tu pratiques ?
                                1. merci, je suis entrain de créer un jeu gratuit et j'ai beaucoup de mal avec les requette SQL.
                                  C'est un peut ma bête noir^^
                                  Mais bon je pense m'en sortir (quoique...lol), j'ai très souvent des problèmes, mais ça devrait être pas mal..
                                  • 1
                                  • 2