Problème avec mon script.

dcbastien Messages postés 35 Date d'inscription mardi 23 mars 2004 Statut Membre Dernière intervention 4 septembre 2005 - 11 nov. 2004 à 09:33
dcbastien Messages postés 35 Date d'inscription mardi 23 mars 2004 Statut Membre Dernière intervention 4 septembre 2005 - 11 nov. 2004 à 14:05
J'ai ceci:

<?php

session_start();

/*
si la variable de session login n'existe pas cela siginifie que le visiteur
n'a pas de session ouverte, il n'est donc pas logué ni autorisé à
acceder à l'espace membres
*/
if(!isset($_SESSION['nom'])) {

echo'Vous n'êtes pas enregistré(e).';

exit;
}
?>

<?php

if( isset( $_GET['action'] ) )
{
$action = $_GET['action'];
}
else
$action = "";

switch($action)
{
case "ajouter":
if( isset( $_POST['titre'] ) && !empty( $_POST['titre'] ) &&
isset( $_POST['texte'] ) && !empty( $_POST['texte'] ) )
{
// si nos entrées ont été addslashées
if( get_magic_quotes_gpc() )
{
$_POST['titre'] = stripslashes( $_POST['titre'] );
$_POST['texte'] = stripslashes( $_POST['texte'] );
}

$table_news = 'rub_' . $_SESSION['nom'] . 'news';

// Paramètres persos
$host = 'localhost'; // voir hébergeur
$user = "root"; // vide ou "root" en local
$pass = ""; // vide en local
$bdd = ""; // nom de la BD
// connexion
@mysql_connect($host,$user,$pass)
or die("Impossible de se connecter");
@mysql_select_db("$bdd")
or die("Impossible de se connecter");

$query = "INSERT INTO $table_news(titre, texte, date) VALUES (";
$query .= "'" . mysql_escape_string($this->titre) . "', ";
$query .= "'" . mysql_escape_string($this->texte) . "', ";
$query .= "NOW() )";
$result = mysql_query($query);
mysql_close();

print("La news a bien été ajoutée !");
}
else
print("Le formulaire n'a pas été rempli correctement !");

default:
print("Remplissez le formulaire ci-dessous pour ajouter une news :

");
print("<form action="ajouter.php?action=ajouter" method="post">");
print("\n\");
print(\"----
Titre de la news :, , \n\");
print(\"----
Texte de la news :, <textarea name=\"texte\" rows=\"20\" cols=\"50\"></textarea>, \n\");
print(\"----
, \n\");
print("
\n");
print("</form>");

}

?>

Le problème, c'est que quand je remplis le formulaire, la page affiche ensuite après validation "La news a bien été ajoutée." mais il n'y a rien en plus dans la table mysql.

Merci d'avance pour votre aide.

4 réponses

cs_nlh Messages postés 93 Date d'inscription mercredi 21 avril 2004 Statut Membre Dernière intervention 9 décembre 2007 1
11 nov. 2004 à 11:52
$query = "INSERT INTO $table_news(titre, texte, date) VALUES (";
$query .= "'" . mysql_escape_string($this->titre) . "', ";
$query .= "'" . mysql_escape_string($this->texte) . "', ";
$query .= "NOW() )";
echo $query."
";
$result = mysql_query($query);
mysql_close();

comme ca, ca fera un echo de ta requete et tu poura verifié que la requete a une bonne syntaxe... post la que je vois stp...
je pense que le pb vient de la

Emailing-Online est en cour de réalisation, mais vous pouvez quand meme regarder et tester.
0
dcbastien Messages postés 35 Date d'inscription mardi 23 mars 2004 Statut Membre Dernière intervention 4 septembre 2005
11 nov. 2004 à 12:22
Vous pouvez pas savoir comme je m'en veux. J'ai oublié le _news dans ma variable $table_news.

Par contre, maintenant, une fiche est ajouter avec la date et l'heure mais dans les champs Texte et Titre, c'est vide dans ma bdd.

Et grace à echo $query... je vois INSERT INTO blog_cbastien_news(titre, texte, date) VALUES ('', '', NOW() ). Les valeurs seront toujours ...rien. Comment dois-je y remedier?
0
Snowboarder69 Messages postés 41 Date d'inscription vendredi 7 février 2003 Statut Membre Dernière intervention 23 juin 2007
11 nov. 2004 à 13:02
ton erreur vient de ces lignes:
$action =   $_GET['action'] ;

if( isset( $_POST['titre'] ;) && !empty( $_POST['titre'] ) &&
isset( $_POST['texte'] ) && !empty( $_POST['texte'] ) )


Tu ne peut pas utilisé les deux méthode en meme temps pour ton formulaire de soumission.

->Soit tu met tout en "$_GET" soit tout en "$_POST" en pensant à changer la méthode du formulaire ( method ="post" ou method="get")
0
dcbastien Messages postés 35 Date d'inscription mardi 23 mars 2004 Statut Membre Dernière intervention 4 septembre 2005
11 nov. 2004 à 14:05
Avec que des $_get avec le formulaire en methode get, ca ne fait strictement rien. :(
Avec que des $_POST et le formulaire en methose post, j'ai les un message selon le cas mais il n'y a rien dans les champs titre et texte. :(
0
Rejoignez-nous