Créer des news en JS
Résolu/Fermé
kennykev51
Messages postés
34
Date d'inscription
mardi 9 juin 2009
Statut
Membre
Dernière intervention
2 juillet 2009
-
11 juin 2009 à 10:26
biboo - 22 juin 2009 à 13:25
biboo - 22 juin 2009 à 13:25
A voir également:
- Créer des news en JS
- Créer un compte gmail - Guide
- Créer un compte google - Guide
- Créer un groupe whatsapp - Guide
- Créer un lien pour partager des photos - Guide
- Créer un compte instagram sur google - Guide
27 réponses
kennykev51
Messages postés
34
Date d'inscription
mardi 9 juin 2009
Statut
Membre
Dernière intervention
2 juillet 2009
19 juin 2009 à 09:37
19 juin 2009 à 09:37
salut,
Je me suis donc mis au PHP et je me sers de easyPHP pour tester tout mon petit site. Je me suis donc servi du script PHP que ma donné Gaara un peu plus haut dans les messages, le problème étant que je n'arrive pas a résoudre une erreur lorsque je publie ma news ce message apparait:
"Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\Documents and Settings\HenryK\Mes documents\Site\MakeNews.php on line 15"
comment faire pour que mon problème se résolve?
Je me suis donc mis au PHP et je me sers de easyPHP pour tester tout mon petit site. Je me suis donc servi du script PHP que ma donné Gaara un peu plus haut dans les messages, le problème étant que je n'arrive pas a résoudre une erreur lorsque je publie ma news ce message apparait:
"Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\Documents and Settings\HenryK\Mes documents\Site\MakeNews.php on line 15"
comment faire pour que mon problème se résolve?
Avant toutes choses, as-tu construit ta Base de données, avec les tables et les champs des tables qui vont bien?
kennykev51
Messages postés
34
Date d'inscription
mardi 9 juin 2009
Statut
Membre
Dernière intervention
2 juillet 2009
19 juin 2009 à 10:09
19 juin 2009 à 10:09
pour la parti de mon code:
<?php
mysql_connect("localhost", "test", "test");
mysql_select_db("bdtest");
if (isset($_POST['titre']) AND isset($_POST['contenu']))
{
$titre = addslashes($_POST['titre']);
$contenu = addslashes($_POST['contenu']);
mysql_query("INSERT INTO news VALUES('', '" . $titre . "', '" . $contenu . "', '" . time() . "')");
}
$retour = mysql_query('SELECT * FROM news ORDER BY id DESC LIMIT 0, 5');
while ($donnees = mysql_fetch_array($retour)) // ce serai ici apparament le PB
{
?>
<h3>
<?php echo $donnees['titre']; ?>
<em>le <?php echo date('d/m/Y à H\hi', $donnees['timestamp']); ?></em>
</h3><br />
<p>
<?php
$contenu = nl2br(stripslashes($donnees['contenu']));
echo $contenu;
?>
</p><br /><hr /><br />
<?php
}
?>
et sinon jai crée un bd mais je ne sais pas tellement quoi mettre comme table dedans =/
<?php
mysql_connect("localhost", "test", "test");
mysql_select_db("bdtest");
if (isset($_POST['titre']) AND isset($_POST['contenu']))
{
$titre = addslashes($_POST['titre']);
$contenu = addslashes($_POST['contenu']);
mysql_query("INSERT INTO news VALUES('', '" . $titre . "', '" . $contenu . "', '" . time() . "')");
}
$retour = mysql_query('SELECT * FROM news ORDER BY id DESC LIMIT 0, 5');
while ($donnees = mysql_fetch_array($retour)) // ce serai ici apparament le PB
{
?>
<h3>
<?php echo $donnees['titre']; ?>
<em>le <?php echo date('d/m/Y à H\hi', $donnees['timestamp']); ?></em>
</h3><br />
<p>
<?php
$contenu = nl2br(stripslashes($donnees['contenu']));
echo $contenu;
?>
</p><br /><hr /><br />
<?php
}
?>
et sinon jai crée un bd mais je ne sais pas tellement quoi mettre comme table dedans =/
kennykev51
Messages postés
34
Date d'inscription
mardi 9 juin 2009
Statut
Membre
Dernière intervention
2 juillet 2009
19 juin 2009 à 10:15
19 juin 2009 à 10:15
j'ai crée un table "news" avec 2 champs dedans ( titre et contenu ) et c'est tout...
n'aurais-je pas du rajouter un champ par exemple "idnews" pour le mettre en clé primaire?
n'aurais-je pas du rajouter un champ par exemple "idnews" pour le mettre en clé primaire?
1/ Tu bosses bien avec MySQL?
2/ Ajouter une clé primaire pour chaque news serait une bonne idée en effet.
3/ Le code que tu as copié est un peu foireux. Les étapes de connexion seraient plutôt :
> je ne sais plus l'ordre des paramètres, mais tu devrais avoir :
$connexion = mysql_db_connect( "serveur", "login", "password", "database"); // Connexion
$requete = "SELECT .."; // Je te conseille de mettre ta requête dans une chaine de caractères, histoire d'y voir mieux
$resultat = mysql_db_query($connexion, $requete); // Un truc dans le genre, tu prends ton flux de connexion en paramètre quoi
while ($donnees = mysql_fetch_array($resultat)) // ce serai ici apparament le PB
{
}
Essaie d'abord d'établir de bonnes bases (savoir si t'es bien co à la BDD).
2/ Ajouter une clé primaire pour chaque news serait une bonne idée en effet.
3/ Le code que tu as copié est un peu foireux. Les étapes de connexion seraient plutôt :
> je ne sais plus l'ordre des paramètres, mais tu devrais avoir :
$connexion = mysql_db_connect( "serveur", "login", "password", "database"); // Connexion
$requete = "SELECT .."; // Je te conseille de mettre ta requête dans une chaine de caractères, histoire d'y voir mieux
$resultat = mysql_db_query($connexion, $requete); // Un truc dans le genre, tu prends ton flux de connexion en paramètre quoi
while ($donnees = mysql_fetch_array($resultat)) // ce serai ici apparament le PB
{
}
Essaie d'abord d'établir de bonnes bases (savoir si t'es bien co à la BDD).
kennykev51
Messages postés
34
Date d'inscription
mardi 9 juin 2009
Statut
Membre
Dernière intervention
2 juillet 2009
19 juin 2009 à 10:45
19 juin 2009 à 10:45
je vais tester tout ça je te redis quoi merci ;)
(oui je bosse avec MySQL)
(oui je bosse avec MySQL)
kennykev51
Messages postés
34
Date d'inscription
mardi 9 juin 2009
Statut
Membre
Dernière intervention
2 juillet 2009
19 juin 2009 à 11:45
19 juin 2009 à 11:45
$connexion = mysql_db_connect( "serveur", "login", "password", "database"); // Connexion
pour cette ligne j'ai bien compris qu'il fallait que je remplace "serveur" login" password" "database" mais parcontre comment je defini mon login et mon password? et puis je mets quoi à la place de serveur...
je suis désolé hein je connais pas et j'y arrive pas, quitte à passer pour un noeu-noeud =/
pour cette ligne j'ai bien compris qu'il fallait que je remplace "serveur" login" password" "database" mais parcontre comment je defini mon login et mon password? et puis je mets quoi à la place de serveur...
je suis désolé hein je connais pas et j'y arrive pas, quitte à passer pour un noeu-noeud =/
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Nan ya pas de soucis. :)
Oui, tu remplaces les champs serveurs login etc.
En l'occurrence, il s'agit de mettre "localhost" pour serveur, le nom de ta BDD à la place de "database".
Pour le reste ça dépend de ta config EasyPHP.
Pour le login/mot de passe, faut voir dans tes fichiers .conf dans EasyPHP. (ça doit être "root"/"password" ou "root"/"" - pas de mot de passe pour le password).
Oui, tu remplaces les champs serveurs login etc.
En l'occurrence, il s'agit de mettre "localhost" pour serveur, le nom de ta BDD à la place de "database".
Pour le reste ça dépend de ta config EasyPHP.
Pour le login/mot de passe, faut voir dans tes fichiers .conf dans EasyPHP. (ça doit être "root"/"password" ou "root"/"" - pas de mot de passe pour le password).
kennykev51
Messages postés
34
Date d'inscription
mardi 9 juin 2009
Statut
Membre
Dernière intervention
2 juillet 2009
19 juin 2009 à 15:41
19 juin 2009 à 15:41
J'y suis presque!!!
j'ai un dernier probleme
voici mon code PHP pour créer la news
<?php
if (isset($_POST['go']) && $_POST['go']=='Poster la news') {
$base = mysql_connect ('localhost', 'root', 'mysql');
mysql_select_db('MaBD', $base);
if (!isset($_POST['auteur']) || !isset($_POST['titre']) || !isset($_POST['news'])) {
$erreur = 'Les variables ncessaires au script ne sont pas dfinies.';
}
else {
if (empty($_POST['auteur']) || empty($_POST['titre']) || empty($_POST['news'])) {
$erreur = 'Au moins un des champs est vide.';
}
else {
$sql = 'INSERT INTO news VALUES("", "'.mysql_escape_string($_POST['auteur']).'", "'.mysql_escape_string($_POST['titre']).'", "'.date("Y-m-d H:i:s").'", "'.mysql_escape_string($_POST['news']).'")';
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
mysql_close();
header('Location: ../Index.php');
exit();
}
}
}
?>
sauf que lorsque je l'exécute voici l'erreur:
Erreur SQL !INSERT INTO news VALUES("", "HENRY Kévin", "Test de News", "2009-06-19 15:45:05", "Ceci est un test :\r\nBlablablablablablablablablablablablabla")
Incorrect integer value: '' for column 'id' at row 1
l'erreur viens de "Id" mais comment la corriger?
j'ai un dernier probleme
voici mon code PHP pour créer la news
<?php
if (isset($_POST['go']) && $_POST['go']=='Poster la news') {
$base = mysql_connect ('localhost', 'root', 'mysql');
mysql_select_db('MaBD', $base);
if (!isset($_POST['auteur']) || !isset($_POST['titre']) || !isset($_POST['news'])) {
$erreur = 'Les variables ncessaires au script ne sont pas dfinies.';
}
else {
if (empty($_POST['auteur']) || empty($_POST['titre']) || empty($_POST['news'])) {
$erreur = 'Au moins un des champs est vide.';
}
else {
$sql = 'INSERT INTO news VALUES("", "'.mysql_escape_string($_POST['auteur']).'", "'.mysql_escape_string($_POST['titre']).'", "'.date("Y-m-d H:i:s").'", "'.mysql_escape_string($_POST['news']).'")';
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
mysql_close();
header('Location: ../Index.php');
exit();
}
}
}
?>
sauf que lorsque je l'exécute voici l'erreur:
Erreur SQL !INSERT INTO news VALUES("", "HENRY Kévin", "Test de News", "2009-06-19 15:45:05", "Ceci est un test :\r\nBlablablablablablablablablablablablabla")
Incorrect integer value: '' for column 'id' at row 1
l'erreur viens de "Id" mais comment la corriger?
kennykev51
Messages postés
34
Date d'inscription
mardi 9 juin 2009
Statut
Membre
Dernière intervention
2 juillet 2009
22 juin 2009 à 09:55
22 juin 2009 à 09:55
non? personne n'as d'idée?
kennykev51
Messages postés
34
Date d'inscription
mardi 9 juin 2009
Statut
Membre
Dernière intervention
2 juillet 2009
22 juin 2009 à 11:18
22 juin 2009 à 11:18
J'ai le plaisir de vous annoncer qu'après 1 semaine et demi d'acharnement, MON INTRANET FONCTIONNE ENFIN!!!!!!!!!
oui je sais j'ai mis le temps ^^!!! je tiens donc à remercier toutes les personnes qui mon aidé
@ bientôt
et merci encore!
oui je sais j'ai mis le temps ^^!!! je tiens donc à remercier toutes les personnes qui mon aidé
@ bientôt
et merci encore!