Php/mysql
ldld
Messages postés
11
Statut
Membre
-
toto -
toto -
Bonjour,
je travaille sur une base de données et je dois alimenter cette base.
j'ai un formulaire php.
je récupère tous les idrubrique de ma table rubrique que j'ai saisie avant. (idrubrique est le id de la table rubrique dont j'ai besoin ds ma table question)
le problème est le suivant:
Il ne m'insert que le ID = 1, pour le reste il me dit aucun enregistrement
Est ce que vous avez une idée???
ma page htm de saisie:
<html>
<head>
<title>Formulaire table question</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<form action="form_tb_question_bm.php" method="post" >
<div class="blue">
<h1>linguistique</h1>
<h1>remplir la table question de la base Morphosyntaxique</h1>
<label>idrubrique</label>
<table>
<select name="idrubrique">
<option value="1">le duel</option>
<option value="2"> le pluriel</option>
<option value="3">le genre</option>
<option value="4">La substantivation</option>
<option value="5">Le diminutif</option>
<option value="6">Les pronoms personnels</option>
<option value="7">Les pronoms démonstratifs</option>
<option value="8">Les adverbes interrogatifs</option>
<option value="9">Les interrogatifs composés</option>
<option value="10">L'interrogation totale suffixée</option>
<option value="11">La négation</option>
<option value="12">Les adjectifs possessifs</option>
<option value="13">Les pronoms combinés</option>
<option value="14">Les pronoms possessifs</option>
<option value="15">Le lieu</option>
<option value="16">Le temps (futur)</option>
<option value="17">Le temps</option>
<option value="18">Les quantificateurs</option>
<option value="19">Les outils syntaxiques divers</option>
<option value="20">verbes aspectuels</option>
<option value="21">Le passé</option>
<option value="22">Le présent</option>
<option value="23">L'impératif</option>
</select>
</table>
<br>
<label>idquestion</label>
<br>
<input type="text" name="idq">
<br>
<label>Code question</label><br>
<input type="text" name="code">
<br>
<label>texte</label><br>
<input type="text" name="ta">
<br>
<label>Transcription phonétique</label><br>
<input type="text" name="tp">
<br>
<label>Traduction en français</label><br>
<input type="text" name="trad">
<br>
<label>Image</label><br>
<input type="text" name="image">
<br><br>
<input type="submit" name="Submit" value="Valider">
<input type="hidden" name="act" value="1">
<input type="reset" name=Effacer VALUE="Effacer" >
</div>
</form>
</body>
</html>
///////////
Mon script PHP est le suivant:
<html>
<head>
<title>Insertion des données dans la base Morphosyntaxique</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<?php
// Récupération des données POST table question
$idrubrique = $_POST['$rubrique'];
$idquestion = $_POST['idq'];
$codequestion = $_POST['code'];
$textearabe = $_POST['ta'];
$transphon = $_POST['tp'];
$traduction = $_POST['trad'];
$image = $_POST['image'];
//connection à la base
$serveur = "localhost";
$utilisateur = "root";
$motDePasse = "";
$base = "atlasbm";
$db = mysql_pconnect($serveur, $utilisateur , $motDePasse)
or die("Impossible de se connecter au serveur de bases de données.");
mysql_select_db($base, $db)
or die("Base de données non trouvée.");
//récupération de idrubrique et insertion dans la table question
$ID = 0; // valeur par défaut
if( isset( $_POST['idrubrique'] ) && !empty( $_POST['idrubrique'] ) ) // si tu as une réponse du formulaire
{
$ID = (int) $_POST['idrubrique'];
}
$sql = "SELECT `idrubrique` FROM `question` WHERE `idrubrique` = '$ID';";
$result = mysql_query($sql, $db);
if($result) //si la requête s'est bien exécutée
{
if( mysql_num_rows($result) == 0 ) //pas d'enregistrements
{
echo( "<p>Aucun enregistrement.</p>\n" );
}
else // quelque chose à afficher
{
//insertion des données dans la table question
mysql_query("INSERT INTO question VALUES ('$idrubrique','$idquestion','$codequestion','$textearabe','$transphon','$traduction','$image')") or die("Impossible d'insérer les données");
printf("Le dernier ID inséré dans est le id %d\n", $idquestion);
}
}
else // erreur d'exécution
{
echo( "<p>Erreur d'exécution de la requête.</p>\n" );
}
echo "Merci.";
?>
</body>
</html>
Merci
je travaille sur une base de données et je dois alimenter cette base.
j'ai un formulaire php.
je récupère tous les idrubrique de ma table rubrique que j'ai saisie avant. (idrubrique est le id de la table rubrique dont j'ai besoin ds ma table question)
le problème est le suivant:
Il ne m'insert que le ID = 1, pour le reste il me dit aucun enregistrement
Est ce que vous avez une idée???
ma page htm de saisie:
<html>
<head>
<title>Formulaire table question</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<form action="form_tb_question_bm.php" method="post" >
<div class="blue">
<h1>linguistique</h1>
<h1>remplir la table question de la base Morphosyntaxique</h1>
<label>idrubrique</label>
<table>
<select name="idrubrique">
<option value="1">le duel</option>
<option value="2"> le pluriel</option>
<option value="3">le genre</option>
<option value="4">La substantivation</option>
<option value="5">Le diminutif</option>
<option value="6">Les pronoms personnels</option>
<option value="7">Les pronoms démonstratifs</option>
<option value="8">Les adverbes interrogatifs</option>
<option value="9">Les interrogatifs composés</option>
<option value="10">L'interrogation totale suffixée</option>
<option value="11">La négation</option>
<option value="12">Les adjectifs possessifs</option>
<option value="13">Les pronoms combinés</option>
<option value="14">Les pronoms possessifs</option>
<option value="15">Le lieu</option>
<option value="16">Le temps (futur)</option>
<option value="17">Le temps</option>
<option value="18">Les quantificateurs</option>
<option value="19">Les outils syntaxiques divers</option>
<option value="20">verbes aspectuels</option>
<option value="21">Le passé</option>
<option value="22">Le présent</option>
<option value="23">L'impératif</option>
</select>
</table>
<br>
<label>idquestion</label>
<br>
<input type="text" name="idq">
<br>
<label>Code question</label><br>
<input type="text" name="code">
<br>
<label>texte</label><br>
<input type="text" name="ta">
<br>
<label>Transcription phonétique</label><br>
<input type="text" name="tp">
<br>
<label>Traduction en français</label><br>
<input type="text" name="trad">
<br>
<label>Image</label><br>
<input type="text" name="image">
<br><br>
<input type="submit" name="Submit" value="Valider">
<input type="hidden" name="act" value="1">
<input type="reset" name=Effacer VALUE="Effacer" >
</div>
</form>
</body>
</html>
///////////
Mon script PHP est le suivant:
<html>
<head>
<title>Insertion des données dans la base Morphosyntaxique</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<?php
// Récupération des données POST table question
$idrubrique = $_POST['$rubrique'];
$idquestion = $_POST['idq'];
$codequestion = $_POST['code'];
$textearabe = $_POST['ta'];
$transphon = $_POST['tp'];
$traduction = $_POST['trad'];
$image = $_POST['image'];
//connection à la base
$serveur = "localhost";
$utilisateur = "root";
$motDePasse = "";
$base = "atlasbm";
$db = mysql_pconnect($serveur, $utilisateur , $motDePasse)
or die("Impossible de se connecter au serveur de bases de données.");
mysql_select_db($base, $db)
or die("Base de données non trouvée.");
//récupération de idrubrique et insertion dans la table question
$ID = 0; // valeur par défaut
if( isset( $_POST['idrubrique'] ) && !empty( $_POST['idrubrique'] ) ) // si tu as une réponse du formulaire
{
$ID = (int) $_POST['idrubrique'];
}
$sql = "SELECT `idrubrique` FROM `question` WHERE `idrubrique` = '$ID';";
$result = mysql_query($sql, $db);
if($result) //si la requête s'est bien exécutée
{
if( mysql_num_rows($result) == 0 ) //pas d'enregistrements
{
echo( "<p>Aucun enregistrement.</p>\n" );
}
else // quelque chose à afficher
{
//insertion des données dans la table question
mysql_query("INSERT INTO question VALUES ('$idrubrique','$idquestion','$codequestion','$textearabe','$transphon','$traduction','$image')") or die("Impossible d'insérer les données");
printf("Le dernier ID inséré dans est le id %d\n", $idquestion);
}
}
else // erreur d'exécution
{
echo( "<p>Erreur d'exécution de la requête.</p>\n" );
}
echo "Merci.";
?>
</body>
</html>
Merci
A voir également:
- Php/mysql
- Easy php - Télécharger - Divers Web & Internet
- Mysql community server - Télécharger - Bases de données
- Expert php pinterest - Télécharger - Langages
- Php alert - Forum PHP
- Mysql a répondu : documentation connexion impossible : paramètres incorrects. - Forum Bases de données
4 réponses
Bonjour
Je n'ai pas essayé de comprendre tout ton code, mais ça ne serait pas
au lieu de
Je n'ai pas essayé de comprendre tout ton code, mais ça ne serait pas
idrubrique = $_POST['idrubrique'];
au lieu de
idrubrique = $_POST['$rubrique'];?
Je ne suis pas sûr de tout comprendre
D'après ton code, tu ne fais d'insertion dans ta table 'question' que si l'enregistrement idrubrique existe déjà. Tu ne peux donc jamais enregistrer de nouvel idrubrique
Tu veux recopier des informations venant d'une table 'rubrique' mais il n'y a aucune table rubrique dans ton code ???
D'après ton code, tu ne fais d'insertion dans ta table 'question' que si l'enregistrement idrubrique existe déjà. Tu ne peux donc jamais enregistrer de nouvel idrubrique
Tu veux recopier des informations venant d'une table 'rubrique' mais il n'y a aucune table rubrique dans ton code ???
bonjour,
j'ai corrigé : idrubrique = $_POST['$rubrique'];
n'enregistre que les deux id.
pour bien expliquer
ma problématique est de récupéper les id déja insérer dans la table "rubrique" pour les insérer dans ma table "question"?
est ce qu'il ya une autre manière de procéder plus facile que la mienne.
j'ai corrigé : idrubrique = $_POST['$rubrique'];
n'enregistre que les deux id.
pour bien expliquer
ma problématique est de récupéper les id déja insérer dans la table "rubrique" pour les insérer dans ma table "question"?
est ce qu'il ya une autre manière de procéder plus facile que la mienne.