Problème script php
boopy
Messages postés
12
Statut
Membre
-
boopy Messages postés 12 Statut Membre -
boopy Messages postés 12 Statut Membre -
Bonjour,
J'ai trouvé ce script pour apprendre le php, il s'agit d'un formulaire de soumission, mais il semblerait qu'il y ait un problème avec la fonction while. Etant débutante, je n'arrive pas à en voir la cause.
function PrintSubForm()
{
global $out, $author, $body, $year, $semestre, $proposer;
$out .= "<form action=\"$PHP_SELF\" method=\"post\">";
$out .= "<b>Proposer une citation</b><br />";
$out .= " Prof : <select name=\"author\">";
$requet = "SELECT DISTINCT author FROM citation ORDER BY author ASC";
$result = mysql_query($requet);
$out .= "<option value=\"\"> ";
while($ligne = mysql_fetch_object($result)) {
if($author == $ligne->author) { $selected = "selected"; } else { $selected=""; }
$out .= "<option value=\"".$ligne->author."\" $selected>".ligne->author. "</option>";
}
$out .= "</select><br />"; // même chose pour year et semestre
$out .= "<textarea name=\"body\" cols=\"40\" rows=\"5\">$body</textarea><br />";
$out .= "Votre pseudo(*) : <input type=\"text\" name=\"sender\" value=\"$proposer\" />";
$out .= "<input type=\"hidden\" name=\"action\" value=\"proposer\" />";
$out .= "<input type=\"submit\" value=\"Valider\" /><br />";
$out .= "Tous les champs sauf celui avec astérisque sont obligatoires.";
$out .= "</form>";
}
Merci d'avance,
J'ai trouvé ce script pour apprendre le php, il s'agit d'un formulaire de soumission, mais il semblerait qu'il y ait un problème avec la fonction while. Etant débutante, je n'arrive pas à en voir la cause.
function PrintSubForm()
{
global $out, $author, $body, $year, $semestre, $proposer;
$out .= "<form action=\"$PHP_SELF\" method=\"post\">";
$out .= "<b>Proposer une citation</b><br />";
$out .= " Prof : <select name=\"author\">";
$requet = "SELECT DISTINCT author FROM citation ORDER BY author ASC";
$result = mysql_query($requet);
$out .= "<option value=\"\"> ";
while($ligne = mysql_fetch_object($result)) {
if($author == $ligne->author) { $selected = "selected"; } else { $selected=""; }
$out .= "<option value=\"".$ligne->author."\" $selected>".ligne->author. "</option>";
}
$out .= "</select><br />"; // même chose pour year et semestre
$out .= "<textarea name=\"body\" cols=\"40\" rows=\"5\">$body</textarea><br />";
$out .= "Votre pseudo(*) : <input type=\"text\" name=\"sender\" value=\"$proposer\" />";
$out .= "<input type=\"hidden\" name=\"action\" value=\"proposer\" />";
$out .= "<input type=\"submit\" value=\"Valider\" /><br />";
$out .= "Tous les champs sauf celui avec astérisque sont obligatoires.";
$out .= "</form>";
}
Merci d'avance,
4 réponses
-
alors déjà, j'ai éclairci ton code, pour pouvoir mieu le lire
function PrintSubForm() { global $out, $author, $body, $year, $semestre, $proposer; $out .= "<form action=\"$PHP_SELF\" method=\"post\">"; $out .= "<b>Proposer une citation</b><br />"; $out .= " Prof : <select name=\"author\">"; $requet = "SELECT DISTINCT author FROM citation ORDER BY author ASC"; $result = mysql_query($requet); $out .= "<option value=\"\"> "; while($ligne = mysql_fetch_object($result)) { if($author == $ligne->author) { $selected = "selected"; } else { $selected=""; } $out .= "<option value=\"".$ligne->author."\" $selected>".ligne->author. "</option>"; } $out .= "</select><br />"; // même chose pour year et semestre $out .= "<textarea name=\"body\" cols=\"40\" rows=\"5\">$body</textarea><br />"; $out .= "Votre pseudo(*) : <input type=\"text\" name=\"sender\" value=\"$proposer\" />"; $out .= "<input type=\"hidden\" name=\"action\" value=\"proposer\" />"; $out .= "<input type=\"submit\" value=\"Valider\" /><br />"; $out .= "Tous les champs sauf celui avec astérisque sont obligatoires."; $out .= "</form>"; }
je te propose moi de modifier cette ligne
$result = mysql_query($requet);
par
$result = mysql_query($requet) or die("Mysql error:".mysql_error());
ainsi si tu as un problème dans ta requete il le diras
-
-
a oui, est-ce que tu as un mysql_connect
et mysql_select_db ???
-
En fait, je n'ai pas de problème particulier de connexion à une base de données via php, mon seul souci est que dans ce script la fonction while semble fausse selon l'éditeur de langage php que je possède ; en outre si j'execute le script sans la fonction while, j'obtiens des données qui s'affichent.