Script PHP envoyant une requete SQL

Bonjour à tous,

J'ai récupéré un script PHP qui envoi une requête SQL et qui récupère le résultat pour l'afficher.

Mais il y'a un problème apparemment ligne 7 mais je ne vois rien de bizarre.

Voila le script :

<?php
echo "<html>
<head><title>Envoi de requetes SQL</title></head>
<body>";
if(ini_get("magic_quotes_gpc") == "1")
{
$_POST['query'] = stripslashes($_POST['query']);
}
$host="localhost";
$user="root";
$password="";
if(!empty($_POST['form']))
{
$cxn = mysqli_connect($host,$user,$password,$_POST['database']);
$result = mysqli_query($cxn,$_POST['query']);
echo "base de données selectionnée : <b>{$_POST['database']}
Requête : <b>{$_POST['query']}</b>
</b><br>
<h3>Résultats</h3><hr>";
if($result == false)
{
echo "<h4>Erreur sql : ".mysqli_error(cxn)."<h4>";
}elseif(@mysqli_num_rows($result) == 0)
{
echo "<h4>Requête exécutée.
Aucun résultat envoyé.</h4>";
}
else
{
echo "<table border='1'><thead><tr>";
$finfo = mysqli_fetch_fields($result);
foreach($finfo as $field)
{
echo "<th>".$field->name."<th>";
}
echo "</tr></thead>
<tbody>";
for($i=0;$i < mysqli_num_rows($result);$i++)
{
echo "<tr>";
$row = mysqli_fetch_row($result);
foreach($row as $value)
{
echo "<td>".$value."</td>";
}
echo "</tr>";
}
echo "</tbody></table>";
}
$query = str_replace("'","%&%",$_POST['query']);
echo "<hr><br>
<form action='{$_SERVER['PHP_SELF']}' method='POST'>
<input type='hidden' name='query' value='$query'>
<input type='hidden' name='database'
value={$_POST['database']}>
<input type='submit' name='queryButton'
value='Nouvelle requête'>
<input type='submit' name='queryButton'
value='Modifier la requête'>
</form>";
exit();
}
if (@$_POST['queryButton'] != "Modifier la requête")
{
$query = " ";
}
else
{
$query = str_replace("%&%","'",$_POST['query']);
}
?>
<form action="<?php echo $_SERVER['PHP_SELF'] ?>"
method="POST">
<table>
<tr><td style='text-align: right; font-weight: bold'>
Saisir le nom de la base de données</td>
<td><input type="text" name="database"
value=<?php echo @$_POST['database'] ?> ></td>
</tr>
<tr><td style='text-align: right; font-weight: bold'
valign="top">Saisir la requête SQL</td>
<td><textarea name="query" cols="60"
rows="10"><?php echo $query ?></textarea></td>
</tr>
<tr><td colspan="2" style='text-align: center'>
<input type="submit" value="Valider la requête"></td>
</tr>
</table>
<input type="hidden" name="form" value="yes">
</form>
</body></html>

PS : J'ai téléchargé EasyPHP version 5 et le serveur MySQL est sur arrêt et ne veut pas démarrer.

Merci pour votre futur aide =)
Configuration: Windows Vista
Firefox 3.0.10

3 réponses

  1. Warning: mysql_connect() [function.mysql-connect]: Can't connect to MySQL server on 'localhost' (10061) in C:\Program Files\EasyPHP 3.0\www\tp\grostest.php on line 3

    Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in C:\Program Files\EasyPHP 3.0\www\tp\grostest.php on line 6

    Warning: mysql_query() [function.mysql-query]: Can't connect to MySQL server on 'localhost' (10061) in C:\Program Files\EasyPHP 3.0\www\tp\grostest.php on line 12

    Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in C:\Program Files\EasyPHP 3.0\www\tp\grostest.php on line 12
    Erreur SQL !
    SELECT nom,prenom,statut,date FROM famille_tbl
    Can't connect to MySQL server on 'localhost' (10061)

    Mais comme je l'ai dis j'ai le serveur MySQL qui est éteint et je ne comprend pas pourquoi!!!
    1. Le code ne sert donc à rien puisque le problème est simplement que le serveur de base de données n'est aps lancé... Dans easyPHP tu dois avoir un .bat qui lance mysqld, cherche-le, démarre-le et ça devrait aller...