Script PHP envoyant une requete SQL

Fermé
geoff008 Messages postés 4 Date d'inscription mardi 26 mai 2009 Statut Membre Dernière intervention 29 mai 2009 - 29 mai 2009 à 14:28
pyschopathe Messages postés 1974 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010 - 29 mai 2009 à 15:01
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 =)
A voir également:

3 réponses

pyschopathe Messages postés 1974 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010 135
29 mai 2009 à 14:37
Quel problème ?
0
geoff008 Messages postés 4 Date d'inscription mardi 26 mai 2009 Statut Membre Dernière intervention 29 mai 2009
29 mai 2009 à 14:43
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!!!
0
pyschopathe Messages postés 1974 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010 135
29 mai 2009 à 15:01
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...
0