IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI, CMS, Outils, Scripts et API PHP Discussion :

[PHP/SQL]Probleme de compatibilté entre EasyPHP1.6 et Xampp1.6.1 [EasyPHP]


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 2
    Par défaut [PHP/SQL]Probleme de compatibilté entre EasyPHP1.6 et Xampp1.6.1
    Bonjour,

    Je suis actuellement en stage (après une Licence Professionnelle) dans un centre de formation et j'ai pour tâche de remettre à jour un logiciel écrit en 2004 et qui n'a que très peu servit.
    Ce logiciel fonctionne avec EasyPHP1.6 mais il faudrait le rendre compatible avec la dernière version de Xampp1.6.1 et donc corriger les bugs causés par ce changement de version. Et je n'arrive pas à en trouver la cause.

    Le fonctionnement du logiciel est le suivant:
    Sur une page web(nom.php) hebergée sur le serveur de l'entreprise, on entre dans le champ "Recherche par année" une année scolaire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    	<!-- tableau de recherche par annee -->
    ...    
      <td><div align="center"><input type="text" name="annee" style="width:180px"><br> 
                  <input type="submit" name="Submit2" value="VALIDATION" style="width:180px"></div></td>
     
    <!-- tableau de mise à jour de la base de données -->
    <?php 
    $date = time();//recuperation de la date du pc
    //$annee = date("Y",$date);//recuperation de l annee du pc   !!!variable "annee" en double - penser a décommenter plus tard!!!
    $idcon=mysql_connect("localhost","root","*******") or die("connexion");
    mysql_select_db("gestioncaces") or die("database");
    $requete="select max(numsession) from session where annee='".$annee."';";//selectionne la session la plus grande de la table session de l'annee en cour et recuperé avant
    $resultat=mysql_query($requete) or die("connexion requete");
    $ligne=mysql_fetch_array($resultat) or die("lig");
    $_SESSION["maxsession"]=$ligne["max(numsession)"];//la session maximum dans une session pour la récuperer dans une page
    ?>
    après validation, le code nous renvoi sur la page annee.php sensée ré-afficher l'année entrée précédement et les références des sessions d'examens de toute l'année dans le centre de formation.

    Désolé pour la retouche avec paint (simplicité). J'ai donc souligné sur cette image les endroits où le programme devrait afficher les infos récupérées dans la BDD.
    En souligné, la date inscrite précédement (variable "annee").
    En pointillés la liste des numéros de séssions.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    <div align="center"><font face="Verdana, Arial, Helvetica, sans-serif" size="6" color="#006600"><b>Recherche par année</b></font></div><br>
     
     
    <table width="260" border="0" cellspacing="0" cellpadding="0" align="center">
            <tr>
              <td valign="top">
                <table width="250" border="0" cellspacing="0" cellpadding="1" bgcolor="#006600">
                  	<tr>
                    	<td>
                      		<table width="248" border="0" cellspacing="0" cellpadding="6" bgcolor="#FFFFFF">
                        		<tr>
                          			<td><p><b><div align="center">Liste des sessions durant l'année <?php echo $annee;?><br><br>
     
    <?php
    //connexion à la base de données 
    $idcon=mysql_connect("localhost","root","*******") or die("connexion");
    mysql_select_db("gestioncaces") or die("database");
     
    $requete="select numsession from session where annee='".$annee."' order by numsession asc";//$annee que l on recupere grace au nom donné dans la zone de texte de la page précedente
    //requête qui affiche toutes les sessions pendant l'annee choisie
    $resultat=mysql_query($requete) or die("execution de la requete impossible");
    $ligne=mysql_fetch_array($resultat);
    $_SESSION["an"]=$annee;
    //parcour de $ligne pour afficher les numeros de session de l'annee choisie
    while ($ligne)
    {?>
      <br>
      <a href="candidat.php?session=<?php echo $ligne["numsession"]?>"><?php echo $ligne["numsession"]."<br>"?></a><?php ;
      $ligne= mysql_fetch_array($resultat);
      //création d'un lien sur les numeros de session vers la pages candidat.php grace a <a href=....
    }?>
      <br>
    <form action="../nom.php" method="post">
    <input type="submit" value="Retour">
    J'ai bien essayé de 'dérouler' le code pour touver ce qui n'allait pas entre les deux envirronnement EasyPHP1.6 en Xampp1.6.1...

    Je vous remercie d'avance si certain d'entre vous peuvent m'aider.


    ps: Si mon topic est placé au mauvais endroit, je m'en excuse, libre aux admins de le déplacer mais j'ai jugé que ça pouvait être un bon emplacement sur ce forum.

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    EasyPHP 1.6 donc register_globals à On par défaut (c'était encore le cas avec la version 1.7 si je ne m'abuse) donc il ne faudrait pas écrire $annee pour une variable provenant d'un formulaire mais $_POST['annee'] (idem pour les autres).

    Vous aurez également le même petit jeu de traduction à faire avec les autres méthodes :
    • URL : $_GET['foo']
    • Cookies : $_COOKIE['foo']
    • Environnement ($PHP_SELF par exemple) : $_ENV['PHP_SELF']
    • ...


    Vous seriez surement tenté de remettre cette directive à On mais je vous le déconseille fortement pour diverses raisons (pratiques, sécurité et celle-ci n'existera plus à la sortie de la future version 6.0).

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 2
    Par défaut
    merci pour la réponse qui est la bonne!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 28/06/2006, 15h56
  2. [SQL] probleme de syntaxe sql avec php
    Par kaygee dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 05/06/2006, 14h32
  3. probleme php sql server
    Par flydragon dans le forum Apache
    Réponses: 1
    Dernier message: 25/05/2006, 20h21
  4. [SQL] probleme de syntaxe pour afficher une photo en php
    Par carmen256 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 11/04/2006, 21h48
  5. Probleme de variable entre SQL et Php
    Par copin dans le forum Langage SQL
    Réponses: 6
    Dernier message: 17/06/2005, 10h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo