BASE DE DONNESES EN PHP
sss
-
smoutsmout Messages postés 160 Statut Membre -
smoutsmout Messages postés 160 Statut Membre -
Bonjour à tous,
Voilà je développe une petite application php (avec easyphp) pour un site. C'est un menu qui permet l'ajout la modification et la suppression de news qui sont stockées dans une base de données phpmyAdmin.
Pour la suppression tout est ok, mais l'ajout et la modification ne fonctionnent pas.
Voici le code pour ajout (php et formulaire) :
<? include("connexion.php"); ?>
<?//AJOUT
$table="news";
$ftitre=""; if(!empty($_POST["ftitre"]))
$ftitre=$_POST["ftitre"];
$fcontenu=""; if(!empty($_POST["fcontenu"]))
$fcontenu=$_POST["fcontenu"];
$fdate=""; if(!empty($_POST["fdate"]))
$fdate=$_POST["fdate"];
// Ajoute le nouvel enregistrement
$query = "INSERT INTO $table(id,titre,contenu,date)";
$query .= " VALUES(10,'$ftitre','$fcontenu','$fdate)";
if(($ftitre!='')&&($fcontenu!='')&&($fdate!=''))
{
$result = mysql_query($query);
}
?>
<form method="post" action="ajout_message.php">
<table width="50%" border="1" align="center">
<tr>
<td height="30">
<div align="center">Titre</div>
</td>
</tr>
<tr>
<td height="51">
<div align="center">
<input type="text" name="ftitre">
</div>
</td>
</tr>
<tr>
<td height="30">
<p align="center">Contenu</p>
</td>
</tr>
<tr>
<td height="51">
<div align="center">
<textarea cols="80" rows="30" name="fcontenu"></textarea>
</div>
</td>
</tr>
<tr>
<td>
<p align="center">Date : jj/mm/aaaa</p>
</td>
<td height="51">
</tr>
<tr>
<td>
<div align="center">
<input type="text" name="fdate">
</div>
</td>
</tr>
<tr>
<td colspan="2" height="45">
<div align="center">
<input type="submit" name="Effacer" value="Effacer">
<input type="submit" name="Ajoutter" value="Ajoutter">
</div>
</td>
</tr>
</table>
</form>
<p> </p>
<p><a href="liste_news.php">Menu général</a></p>
</div>
....suite du code ....
quand j'effectue ma requete il me dit que c'est ok mais rien ne s'ajoute dans la base
pouvez-vous m'aider ???
merci d'avance;
Voilà je développe une petite application php (avec easyphp) pour un site. C'est un menu qui permet l'ajout la modification et la suppression de news qui sont stockées dans une base de données phpmyAdmin.
Pour la suppression tout est ok, mais l'ajout et la modification ne fonctionnent pas.
Voici le code pour ajout (php et formulaire) :
<? include("connexion.php"); ?>
<?//AJOUT
$table="news";
$ftitre=""; if(!empty($_POST["ftitre"]))
$ftitre=$_POST["ftitre"];
$fcontenu=""; if(!empty($_POST["fcontenu"]))
$fcontenu=$_POST["fcontenu"];
$fdate=""; if(!empty($_POST["fdate"]))
$fdate=$_POST["fdate"];
// Ajoute le nouvel enregistrement
$query = "INSERT INTO $table(id,titre,contenu,date)";
$query .= " VALUES(10,'$ftitre','$fcontenu','$fdate)";
if(($ftitre!='')&&($fcontenu!='')&&($fdate!=''))
{
$result = mysql_query($query);
}
?>
<form method="post" action="ajout_message.php">
<table width="50%" border="1" align="center">
<tr>
<td height="30">
<div align="center">Titre</div>
</td>
</tr>
<tr>
<td height="51">
<div align="center">
<input type="text" name="ftitre">
</div>
</td>
</tr>
<tr>
<td height="30">
<p align="center">Contenu</p>
</td>
</tr>
<tr>
<td height="51">
<div align="center">
<textarea cols="80" rows="30" name="fcontenu"></textarea>
</div>
</td>
</tr>
<tr>
<td>
<p align="center">Date : jj/mm/aaaa</p>
</td>
<td height="51">
</tr>
<tr>
<td>
<div align="center">
<input type="text" name="fdate">
</div>
</td>
</tr>
<tr>
<td colspan="2" height="45">
<div align="center">
<input type="submit" name="Effacer" value="Effacer">
<input type="submit" name="Ajoutter" value="Ajoutter">
</div>
</td>
</tr>
</table>
</form>
<p> </p>
<p><a href="liste_news.php">Menu général</a></p>
</div>
....suite du code ....
quand j'effectue ma requete il me dit que c'est ok mais rien ne s'ajoute dans la base
pouvez-vous m'aider ???
merci d'avance;
A voir également:
- BASE DE DONNESES EN PHP
- Base de registre - Guide
- Formules mathématiques de base - Télécharger - Études & Formations
- Easy php - Télécharger - Divers Web & Internet
- Formules excel de base - Guide
- Gigaset as470h base ✓ - Forum telephonie fixe
8 réponses
Salut,
a mon avis ton probleme est la:
$query = "INSERT INTO $table(id,titre,contenu,date)";
$query .= " VALUES(10,'$ftitre','$fcontenu','$fdate)";
la bonne version étant:
$query = "INSERT INTO".$table."(id,titre,contenu,date)";
$query .= " VALUES(10,'".$ftitre."','".$fcontenu."','".$fdate.")";
Sinon dans la requete envoyée tu passes les noms des variables et pas leur valeurs!
a mon avis ton probleme est la:
$query = "INSERT INTO $table(id,titre,contenu,date)";
$query .= " VALUES(10,'$ftitre','$fcontenu','$fdate)";
la bonne version étant:
$query = "INSERT INTO".$table."(id,titre,contenu,date)";
$query .= " VALUES(10,'".$ftitre."','".$fcontenu."','".$fdate.")";
Sinon dans la requete envoyée tu passes les noms des variables et pas leur valeurs!
Bonjour.
S'il te dit que c'est OK, c'est qu'il y a un gros problème, vu que rien dans ton code ne demande l'affichage de 'OK' !
Que veux-tu dire par "c'est ok" ?
Essaye ça :
Tu peux aussi rajouter des OR DIE dans ton fichier connexion.php, s'il n'y en a pas, à tes fonctions mysql_...
quand j'effectue ma requete il me dit que c'est ok mais rien ne s'ajoute dans la base
S'il te dit que c'est OK, c'est qu'il y a un gros problème, vu que rien dans ton code ne demande l'affichage de 'OK' !
Que veux-tu dire par "c'est ok" ?
Essaye ça :
if(($ftitre!='')&&($fcontenu!='')&&($fdate!=''))
{
echo "Requête = ".$query;
$result = mysql_query($query) or die("Erreur de requête :".mysql_error());
}
Tu peux aussi rajouter des OR DIE dans ton fichier connexion.php, s'il n'y en a pas, à tes fonctions mysql_...
Bonjour!
tu n'as aucun message d'erreur?
et tonc code me semble un peu compliqué pour ce que tu veux faire..
pourquoi tu t'embêtes à faire plein de if(pas ivde)..
utilise tout simplement isset..
et puis pourquoi une concaténation pour ta requete en elle même???
pour moi je ferais plus simlement ça:
mais aprés je ne comprend pas purquoi tu fais 2 boutons submit avec effacer et ajouter??? cr là tu les renvoit à la même page...
et pour ton id tu dois le mettre en auto increment ds easy ..
voilà si t'as des questions n'hésites pas!
:)
tu n'as aucun message d'erreur?
et tonc code me semble un peu compliqué pour ce que tu veux faire..
pourquoi tu t'embêtes à faire plein de if(pas ivde)..
utilise tout simplement isset..
et puis pourquoi une concaténation pour ta requete en elle même???
pour moi je ferais plus simlement ça:
<?
// Ajoute le nouvel enregistrement ssi existe $_post dc:
if(isset($_POST['ftitre']) )//dc si formulaire a été envoyé
{ $ftitre=$_POST['ftitre'];
$fcontenu=$_POST['fcontenu'];
$fdate=$_POST['fdate'];
if(($ftitre!='')&&($fcontenu!='')&&($fdate!=''))
{
$query = "INSERT INTO news(id,titre,contenu,date) VALUES('10','".$ftitre."','".$fcontenu."','".$fdate."')";
$result = mysql_query($query);
}
}
?>
mais aprés je ne comprend pas purquoi tu fais 2 boutons submit avec effacer et ajouter??? cr là tu les renvoit à la même page...
et pour ton id tu dois le mettre en auto increment ds easy ..
voilà si t'as des questions n'hésites pas!
:)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
et tes titres de champ tu es sur qu'ils sont bon?
sinon essaye de mettre un echo dans ton code au moment où le post est envoyé..
dc si $_post existe (donc formualire envoyé avec toutes les odnnées)
echo "bouh!";
pour voir si déjà on rentre bien dans la condition...
il va falloir voir par étape ce qui cloche et donc mettre des echo pour voir jusqu'à où ils s'affichent!
sinon essaye de mettre un echo dans ton code au moment où le post est envoyé..
dc si $_post existe (donc formualire envoyé avec toutes les odnnées)
echo "bouh!";
pour voir si déjà on rentre bien dans la condition...
il va falloir voir par étape ce qui cloche et donc mettre des echo pour voir jusqu'à où ils s'affichent!