Php et mySQL sous linux

Bonjour tout le monde ,
je suis débutante en php et mySQL et j'ai une application à faire , je travail sous linux j'ai essayé d'installer php,mysql et apache et je pense que ca va ,
pour débuter j'ai crée une table a ma base de donnée et j'ai essayé d'etablir la connexion php et mysql
mais je sais pas si c'est bien ou pas voici lecode:

connexion.php
<?php
$host = "localhost";
$loginBD = "root";
$passwordBD = "imane";

$nameBD = "data";
// connexion à la base
$db = mysql_connect($host, $loginBD, $passwordBD) or die('Erreur de connexion '.mysql_error());

// sélection de la base
mysql_select_db($nameBD,$db) or die('Erreur de selection de la base '.mysql_error());
?>

index.php
<?php echo "bonjour tout le monde"; ?>

 <?php
    include("connexion.php");
     
   connexion();

$reponse = mysql_query("SELECT * FROM tableau");
while ($donnees = mysql_fetch_array($reponse) )
{
?>
    <p>
    pages : <?php echo $donnees['pages']; ?><br />
    </p>

?>

lorsque je test ce code il n'affiche rien alors que il faut qu'il affiche la table tableau

des idées??
Configuration: Linux
Firefox 3.0.12

5 réponses

  1. Bonjour,

    Je pense que ton code n'edst pas interprété, regarde le code source de ta page pour en avoir le coeur net.

    Tu accèdes bien à ton fichier via ton ip locale ? (http://127.0.0.1/)
    As-tu bien placé ton fichier dans le répertoire racine du serveur ? (voir DOCUMENT_ROOT ph.ini)
    1. Re
      oui j' accèdes à mon fichier via l' ip locale , et les fichiers .php sont dans var/www/html.ou je peux voir ce (DOCUMENT_ROOT ph.ini ) j l'ai pas trouvé?
    2. @kate1985Oups, erreur de ma part, je voulais dire le httpd.conf, fichier situé dans le répertoire d'install d'apache, l'endroit diffère selon les distributions linux.

      Il se peut que tu ais plusieurs fichiers .conf.

      La première chose à regarder est si tu as bien un :
      AddType application/x-httpd-php .php
      Dans la section des mime_module.
  2. index.php

    <?php echo "bonjour tout le monde"; ?>

    <?php
    include("connexion.php");

    connexion();


    ta ligne connexion(); pose problème elle est censée appeler une fonction php hors tu as déja la connexion qui se fait par l'include du fichier connexion

    supprime cette ligne

    ensuite as tu crée ton serveur web ? vas voir sur www.lealinux.org ou fais une recherche sur Google
    1. Re
      créer serveur web !!!!!!!! j'ai seulement installer apache avec php et mysql
  3. Ton apache est-il démaré ?

    tapes dans la barre d'adresse de ton navigateur: http://127.0.0.1 tu devrait avoir la page d'accueil d'Apache

    pour le serveur Web il y a longtemps que j'ai fait ça je ne me souviens plus trop, mais va dans
    Configurer ordinateur
    Service
    web

    il me semble qu'il y a des paramètres à initialiser
    1. Re

      oui mon apache est demarré.
      A cette adresse ( http://127.0.0.1/ ) s'affiche ma page index.php
      ou je pourrai initiaiser ces paramétres ?
  4. Plus haut tu disait à propos du fichier index.php:lorsque je test ce code il n'affiche rien alors que il faut qu'il affiche la table tableau


    Et la tu dis que index.php s'affiche, alors la je ne comprend pas.

    si tu as un affichage c'est que tes parametres sont bons

    par contre dans index.php supprime la ligne connexion();
    1. Re
      attend j t'explique :
      premierment j'ai installé comme j 'ai deja dit en haut php,mysql,apache et pour tester si mon serveur fonctionne je tape l'adresse suivante dans mon avigateur : http://localhost
      donc c'est la page index.php qui est affiché (biensur il s'affiche selon le code qu'elle contient)
      en deuxiemme j'ai voulu etablir la connexion entre php et mysql j'utilise connexion.php
      rien ne s'affiche je me suis dit oki connexion etablit .
      mais lorsque j'ai ecrit la suite de code pour afficher des données a partir de la base de données rien n'est affiché meme le
      <? php  echo'bjr tt le monde '?>

      alors à cette etape j'arrive pas à comprendre ce qui se passe .
      déja comment je pourrai savoir que la connexion php/mysql est etabli ?? c'est la question

      merci pr votre attention
  5. On va mettre des echo:
    connexion.php
    
    <?php
    $host = "localhost";
    $loginBD = "root";
    $passwordBD = "imane";
    
    $nameBD = "data";
    // connexion à la base
    $cnx = mysql_connect($host, $loginBD, $passwordBD) or die('Erreur de connexion '.mysql_error());
    if($cnx){
    	echo 'La connexion au serveur a r&eacute;ussi !';
    	// alors on fait la sélection de la base
    	$db=mysql_select_db($nameBD,$cnx) or die('Erreur de selection de la base '.mysql_error());
    	if($db){
    		echo '<br />Et la base '.$nameBD.' est bien s&eacute;lectionn&eacute;e !';
    	}
    }
    ?>
    
    
    index.php
    
    <?php echo "Bonjour tout le monde"; ?>
    
     <?php
        include("connexion.php");
        //en faisant l'include c'est comme si tu copier/coller le fichier connexion.php à cet endroit la
    //mais il ne faut surtout pas mettre ensuite connexion(); ci dessous	 
       ///////  connexion();
    
    $reponse = mysql_query("SELECT * FROM tableau");
    //on peût même voir combien on a de réponses:
    echo 'On a trouv&eacute; :'.mysql_num_rows($reponse).' r&eacute;ponses<br /><br />';
    while ($donnees = mysql_fetch_array($reponse) )
    {
    ?>
        <p>
        pages : <?php echo $donnees['pages']; ?><br />
        </p>
    <?php
    } //ta boucle while n'était pas refermée
    ?>


    il y avait des bugs dans ton script, mais tu dois avoir un problème d'affichage des errreurs

    donc le script ne marchait pas et les erreurs ne s'affichent pas

    Une petit verif:

    mets ce bout de script sous www/html/test

    que tu nommes test_php_ini.php
    <?php
    echo phpinfo();
    ?>

    dans ton navigateur tu tapes: http://127.0.0.1/test/test_php_ini.php

    tu devrait avoir un grand tableau qui contient toutes les directives du php.ini
    cherches ERROR REPORTING
    et dis a quoi elle est
    et aussi display_error si elle est a off ou on