Page 1 sur 1

page blanche suite à la connexion aux bases

Posté : 09 avr. 2008, 16:11
par Cypher_PHP
bonjour

- pourquoi la page blanche s'affiche sur web ?
- afin de vérifier le succès de la connexion, pourrait-ton ajouter un commentaire?



pour info
les identifiants d'accès sont bien renseignés
il y a les données complètes

Voici le code PHP
<?
//connexion au serveur de la base
mysql_connect($dbhost,$dblogin,$dbpass)
or die("erreur de connexion au serveur $dbhost");

//connexion à la base de données
mysql_select_db($dbbase) or die("erreur de connexion a la base de donnees");

// Creation et envoi de la requete
$query = "SELECT * FROM * ";

$result = mysql_query($query);

// Recuperation des resultats
while($row = mysql_fetch_row($result))
{
$etab = $row[0];
}
echo "<tr><td>$etab</td></tr>";

?>

merci beaucoup de vos réponses

Posté : 09 avr. 2008, 16:15
par Ryle
Test le résultat retourné par mysql_query(). Ajoute par exemple un "or die(mysql_error())" après pour s'il n'y a pas eu d'erreur lors de l'exécution de la requête.

Et jette un coup d'oeil à la FAQ pour apprendre à débugguer les problèmes liés aux requêtes SQL :) En l'occurence, la table " * " n'existe pas.

Posté : 09 avr. 2008, 16:17
par guilt92
Petit détail supplémentaire :

si tu écrase à chaque fois ta valeur $etab dans la boucle while tu ne récupèreras que la derniere valeur...

solutions possibles :

1/ Mettre le echo dans la boucle while
ou
2/ Concaténer les valeurs de $etab soit à la suite soit dans un tableau.

Posté : 09 avr. 2008, 16:55
par Cypher_PHP
toujours rien

revoici le code php
<?

//connexion au serveur de la base
mysql_connect($dbhost, $dblogin, $dbpass)
or die("erreur de connexion au serveur $dbhost");

//connexion à la base de données
mysql_select_db($dbbase) or die("erreur de connexion a la base de donnees");

// Creation et envoi de la requete
$query = "SELECT etab FROM $dbtable ";

$result = mysql_query($query)or die(mysql_error());
echo mysql_errno() . ": " . mysql_error(). "\n";

// Recuperation des resultats
while($row = mysql_fetch_row($result))
{
$etab = $row[0];
echo "<tr><td>$etab</td></tr>";
}

?>

Posté : 09 avr. 2008, 17:03
par guilt92
Si tu fais un echo "Test"; sur ta page celui ci s'affiche-t-il correctement ?

Posté : 09 avr. 2008, 17:35
par Cypher_PHP
non, tjrs blanche

voici le code
<?
//connexion au serveur de la base
mysql_connect($dbhost, $dblogin, $dbpass)
or die("erreur de connexion au serveur $dbhost");

//connexion à la base de données
mysql_select_db($dbbase) or die("erreur de connexion a la base de donnees");

// Creation et envoi de la requete
$query = "SELECT etab FROM $dbtable ";

$result = mysql_query($query)or die(mysql_error());
echo mysql_errno() . ": " . mysql_error(). "\n";

// Recuperation des resultats
while($row = mysql_fetch_row($result))
{
$etab = $row[0];
echo "<tr><td>$etab</td></tr>";
}


echo "test";

?>

Posté : 09 avr. 2008, 18:28
par Ryle
Et avec une balise "<?php" plutôt qu'un short open tag "<?" qui n'est peut être pas paramétré dans ton .ini ? (en fait tu dois avoir un résultat - ou un message d'erreur - mais il apparait uniquement dans le code source et pas à l'écran à cause des balises < > ...)

Posté : 09 avr. 2008, 19:33
par caroube
Mets des echo "avant connect", echo "avant select", ... avant chaque instruction et regarde où ça s'arrête.
Si tu as tout à blanc, alors ça vient d'ailleurs

Posté : 10 avr. 2008, 10:10
par Cypher_PHP
je viens de trouver l'erreur

j'ai oublié un point-virgule après les identifiants qui sont pas sur le code PHP.
je vous prie de m'excuser car j'aurai les mettre sur le forum en les remplaçant par des * pour que vous en trouveriez rapidement.
encore merci à vous

voici mon code php:
<?php

$dbhost="*****";
$dblogin="*****";
$dbpass="*****";
$dbbase="*****";
$dbtable="*****";

//connexion au serveur de la base
mysql_connect($dbhost, $dblogin, $dbpass)
or die("erreur de connexion au serveur $dbhost");

//connexion à la base de données
mysql_select_db($dbbase) or die("erreur de connexion a la base de donnees");

// Creation et envoi de la requete
$query = "SELECT etab FROM $dbtable ";

$result = mysql_query($query)or die(mysql_error());
echo mysql_errno() . ": " . mysql_error(). "\n";

// Recuperation des resultats
while($row = mysql_fetch_row($result))
{
$etab = $row[0];
echo "<tr><td>$etab</br></td></tr>";
}

?>