Poster des données en ajax vers php
Résolu/Fermé
aldofkr
Messages postés
35
Date d'inscription
mardi 25 février 2014
Statut
Membre
Dernière intervention
30 juillet 2019
-
Modifié le 25 oct. 2017 à 09:46
aldofkr Messages postés 35 Date d'inscription mardi 25 février 2014 Statut Membre Dernière intervention 30 juillet 2019 - 22 nov. 2017 à 20:40
aldofkr Messages postés 35 Date d'inscription mardi 25 février 2014 Statut Membre Dernière intervention 30 juillet 2019 - 22 nov. 2017 à 20:40
A voir également:
- Poster des données en ajax vers php
- Easy php - Télécharger - Divers Web & Internet
- Windows 7 vers windows 10 - Accueil - Mise à jour
- Excel validation des données liste - Guide
- Trier des données excel - Guide
- Reinstaller windows sans perte de données - Guide
4 réponses
jordane45
Messages postés
38369
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 janvier 2025
4 721
25 oct. 2017 à 09:52
25 oct. 2017 à 09:52
Bonjour,
Pour commencer :
- Active la gestion des erreurs PDO dans la connexion à ta bdd et place CHAQUE requête dans des blocs try/catch (comme expliqué ici : https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs )
Puis, applique ceci (concernant la structure / l'écriture de ton code ) https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
Et enfin :
- Remplace ton bouton SUBMIT par un bouton : BUTTON et donne lui un id.
- Modifie ton code JS :
par
NB: Regarde également dans la console de ton navigateur les retours ajax. Si tu es sur chrome, tu peux installer un petit plugin pour ça (cherche ajax tu le trouveras ). Si tu es sur firefox, penses à activer le hxr dans la console.
Pour commencer :
- Active la gestion des erreurs PDO dans la connexion à ta bdd et place CHAQUE requête dans des blocs try/catch (comme expliqué ici : https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs )
Puis, applique ceci (concernant la structure / l'écriture de ton code ) https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
Et enfin :
- Remplace ton bouton SUBMIT par un bouton : BUTTON et donne lui un id.
<button type="button" id="envoyer" class="btn btn-primary form-control"><span class="glyphicon glyphicon-send"></span></button>
- Modifie ton code JS :
$('.tchat').submit(function(){
par
$('#envoyer').click(function(){
NB: Regarde également dans la console de ton navigateur les retours ajax. Si tu es sur chrome, tu peux installer un petit plugin pour ça (cherche ajax tu le trouveras ). Si tu es sur firefox, penses à activer le hxr dans la console.
aldofkr
Messages postés
35
Date d'inscription
mardi 25 février 2014
Statut
Membre
Dernière intervention
30 juillet 2019
25 oct. 2017 à 21:19
25 oct. 2017 à 21:19
merci jordane pour ta reponse. j'ai fait les modificatios que tu m'a conseillé.
mais dans ma console, je reçois ce messae quans je poste mes données
<br />↵<font size='1'><table class='xdebug-error xe-warning' dir='ltr' border='1' cellspacing='0' cellpadding='1'>↵<tr><th align='left' bgcolor='#f57900' colspan="5"><span style='background-color: #cc0000; color: #fce94f; font-size: x-large;'>( ! )</span> Warning: require_once(pages/menu.php): failed to open stream: No such file or directory in C:\wamp\www\bootstrap\pages\fonction-chat.php on line <i>2</i></th></tr>↵<tr><th align='left' bgcolor='#e9b96e' colspan='5'>Call Stack</th></tr>↵<tr><th align='center' bgcolor='#eeeeec'>#</th><th align='left' bgcolor='#eeeeec'>Time</th><th align='left' bgcolor='#eeeeec'>Memory</th><th align='left' bgcolor='#eeeeec'>Function</th><th align='left' bgcolor='#eeeeec'>Location</th></tr>↵<tr><td bgcolor='#eeeeec' align='center'>1</td><td bgcolor='#eeeeec' align='center'>0.0320</td><td bgcolor='#eeeeec' align='right'>138456</td><td bgcolor='#eeeeec'>{main}( )</td><td title='C:\wamp\www\bootstrap\pages\fonction-chat.php' bgcolor='#eeeeec'>..\fonction-chat.php<b>:</b>0</td></tr>↵</table></font>↵<br />↵<font size='1'><table class='xdebug-error xe-fatal-error' dir='ltr' border='1' cellspacing='0' cellpadding='1'>↵<tr><th align='left' bgcolor='#f57900' colspan="5"><span style='background-color: #cc0000; color: #fce94f; font-size: x-large;'>( ! )</span> Fatal error: require_once(): Failed opening required 'pages/menu.php' (include_path='.;C:\php\pear') in C:\wamp\www\bootstrap\pages\fonction-chat.php on line <i>2</i></th></tr>↵<tr><th align='left' bgcolor='#e9b96e' colspan='5'>Call Stack</th></tr>↵<tr><th align='center' bgcolor='#eeeeec'>#</th><th align='left' bgcolor='#eeeeec'>Time</th><th align='left' bgcolor='#eeeeec'>Memory</th><th align='left' bgcolor='#eeeeec'>Function</th><th align='left' bgcolor='#eeeeec'>Location</th></tr>↵<tr><td bgcolor='#eeeeec' align='center'>1</td><td bgcolor='#eeeeec' align='center'>0.0320</td><td bgcolor='#eeeeec' align='right'>138456</td><td bgcolor='#eeeeec'>{main}( )</td><td title='C:\wamp\www\bootstrap\pages\fonction-chat.php' bgcolor='#eeeeec'>..\fonction-chat.php<b>:</b>0</td></tr>↵</table></font>↵"
je ne sais pas trop ce que ça veut dire, mais j'ai pu decoder certaine ligne comme le fait que mon fichier connect.php ne contient pas les données nécessaire à la connexion a la bd
mais dans ma console, je reçois ce messae quans je poste mes données
<br />↵<font size='1'><table class='xdebug-error xe-warning' dir='ltr' border='1' cellspacing='0' cellpadding='1'>↵<tr><th align='left' bgcolor='#f57900' colspan="5"><span style='background-color: #cc0000; color: #fce94f; font-size: x-large;'>( ! )</span> Warning: require_once(pages/menu.php): failed to open stream: No such file or directory in C:\wamp\www\bootstrap\pages\fonction-chat.php on line <i>2</i></th></tr>↵<tr><th align='left' bgcolor='#e9b96e' colspan='5'>Call Stack</th></tr>↵<tr><th align='center' bgcolor='#eeeeec'>#</th><th align='left' bgcolor='#eeeeec'>Time</th><th align='left' bgcolor='#eeeeec'>Memory</th><th align='left' bgcolor='#eeeeec'>Function</th><th align='left' bgcolor='#eeeeec'>Location</th></tr>↵<tr><td bgcolor='#eeeeec' align='center'>1</td><td bgcolor='#eeeeec' align='center'>0.0320</td><td bgcolor='#eeeeec' align='right'>138456</td><td bgcolor='#eeeeec'>{main}( )</td><td title='C:\wamp\www\bootstrap\pages\fonction-chat.php' bgcolor='#eeeeec'>..\fonction-chat.php<b>:</b>0</td></tr>↵</table></font>↵<br />↵<font size='1'><table class='xdebug-error xe-fatal-error' dir='ltr' border='1' cellspacing='0' cellpadding='1'>↵<tr><th align='left' bgcolor='#f57900' colspan="5"><span style='background-color: #cc0000; color: #fce94f; font-size: x-large;'>( ! )</span> Fatal error: require_once(): Failed opening required 'pages/menu.php' (include_path='.;C:\php\pear') in C:\wamp\www\bootstrap\pages\fonction-chat.php on line <i>2</i></th></tr>↵<tr><th align='left' bgcolor='#e9b96e' colspan='5'>Call Stack</th></tr>↵<tr><th align='center' bgcolor='#eeeeec'>#</th><th align='left' bgcolor='#eeeeec'>Time</th><th align='left' bgcolor='#eeeeec'>Memory</th><th align='left' bgcolor='#eeeeec'>Function</th><th align='left' bgcolor='#eeeeec'>Location</th></tr>↵<tr><td bgcolor='#eeeeec' align='center'>1</td><td bgcolor='#eeeeec' align='center'>0.0320</td><td bgcolor='#eeeeec' align='right'>138456</td><td bgcolor='#eeeeec'>{main}( )</td><td title='C:\wamp\www\bootstrap\pages\fonction-chat.php' bgcolor='#eeeeec'>..\fonction-chat.php<b>:</b>0</td></tr>↵</table></font>↵"
je ne sais pas trop ce que ça veut dire, mais j'ai pu decoder certaine ligne comme le fait que mon fichier connect.php ne contient pas les données nécessaire à la connexion a la bd
jordane45
Messages postés
38369
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 janvier 2025
4 721
25 oct. 2017 à 21:26
25 oct. 2017 à 21:26
Quel est le code exact du fichier pages\fonction-chat.php
Et celui du connect.php
Et celui du connect.php
aldofkr
Messages postés
35
Date d'inscription
mardi 25 février 2014
Statut
Membre
Dernière intervention
30 juillet 2019
25 oct. 2017 à 22:04
25 oct. 2017 à 22:04
voici celui de connect.php
<?php
try{
$pdo= new PDO('mysql:dbname=gzconseils; host=localhost', 'root', '');
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ);
}catch(PDOException $e){
die('Erreur : ' .$e -> getMessage());
}
et celui de fonction-chat.php
<?php
require_once 'pages/menu.php';
require_once 'pages/connect.php';
error_reporting(E_ALL);
$d = "";
try{
$psd = !empty($_POST['pseudo']) ? $_POST['pseudo'] : NULL;
$msg = !empty($_POST['message']) ? $_POST['message'] : NULL;
$act = !empty($_POST['action']) ? $_POST['action'] : NULL;
$_SESSION['pseudo'] = $msg;
if($act == "ajoutmsg"){
$req = $pdo->prepare("INSERT INTO message (pseudo, message, date) VALUES ( :psd, :msg, NOW())");
$req->execute(array(':psd'=>$psd, ':msg'=>$msg));
}
}catch(PDOException $e){
echo " Erreur ! ".$e->getMessage();
}
json_encode($d);
?>
<?php
try{
$pdo= new PDO('mysql:dbname=gzconseils; host=localhost', 'root', '');
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ);
}catch(PDOException $e){
die('Erreur : ' .$e -> getMessage());
}
et celui de fonction-chat.php
<?php
require_once 'pages/menu.php';
require_once 'pages/connect.php';
error_reporting(E_ALL);
$d = "";
try{
$psd = !empty($_POST['pseudo']) ? $_POST['pseudo'] : NULL;
$msg = !empty($_POST['message']) ? $_POST['message'] : NULL;
$act = !empty($_POST['action']) ? $_POST['action'] : NULL;
$_SESSION['pseudo'] = $msg;
if($act == "ajoutmsg"){
$req = $pdo->prepare("INSERT INTO message (pseudo, message, date) VALUES ( :psd, :msg, NOW())");
$req->execute(array(':psd'=>$psd, ':msg'=>$msg));
}
}catch(PDOException $e){
echo " Erreur ! ".$e->getMessage();
}
json_encode($d);
?>
jordane45
Messages postés
38369
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 janvier 2025
4 721
25 oct. 2017 à 22:05
25 oct. 2017 à 22:05
A quoi te sert le require de pages/menu.php pour un script ajax ??
aldofkr
Messages postés
35
Date d'inscription
mardi 25 février 2014
Statut
Membre
Dernière intervention
30 juillet 2019
25 oct. 2017 à 22:24
25 oct. 2017 à 22:24
je crois bien que c'est le reflexe. c'est là le bug??
jordane45
Messages postés
38369
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 janvier 2025
4 721
25 oct. 2017 à 22:33
25 oct. 2017 à 22:33
Ca en fait parti en tout cas...
Regarde le message d'erreur
Regarde le message d'erreur
aldofkr
Messages postés
35
Date d'inscription
mardi 25 février 2014
Statut
Membre
Dernière intervention
30 juillet 2019
>
jordane45
Messages postés
38369
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 janvier 2025
25 oct. 2017 à 22:40
25 oct. 2017 à 22:40
je l'ai enlevé, et maintenant c'est avec le connect.php qu'il a un problème
jordane45
Messages postés
38369
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 janvier 2025
4 721
>
aldofkr
Messages postés
35
Date d'inscription
mardi 25 février 2014
Statut
Membre
Dernière intervention
30 juillet 2019
25 oct. 2017 à 23:35
25 oct. 2017 à 23:35
Il ne le trouve pas.
Es tu sûr du chemin ?
Il se trouve où par rapport a la racine du serveur ?
Es tu sûr du chemin ?
Il se trouve où par rapport a la racine du serveur ?
aldofkr
Messages postés
35
Date d'inscription
mardi 25 février 2014
Statut
Membre
Dernière intervention
30 juillet 2019
>
jordane45
Messages postés
38369
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 janvier 2025
25 oct. 2017 à 23:55
25 oct. 2017 à 23:55
il se trouve dans un dossier interne au dossier de mon projet. d'où le
<?php
require_once 'pages/connect.php';
?>
<?php
require_once 'pages/connect.php';
?>
aldofkr
Messages postés
35
Date d'inscription
mardi 25 février 2014
Statut
Membre
Dernière intervention
30 juillet 2019
26 oct. 2017 à 01:02
26 oct. 2017 à 01:02
j'ai trouvé le souci
il n'accepte seulement pas que la connexion vienne d'autre part donc j'ai fait comme ceci
<?php
$pdo= new PDO('mysql:dbname=gzconseils; host=localhost', 'root', '');
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ);
$d = "";
try{
$psd = !empty($_POST['pseudo']) ? $_POST['pseudo'] : NULL;
$msg = !empty($_POST['message']) ? $_POST['message'] : NULL;
$act = !empty($_POST['action']) ? $_POST['action'] : NULL;
$_SESSION['pseudo'] = $psd;
if($act == "ajoutmsg"){
$req = $pdo->prepare("INSERT INTO message (pseudo, message, date) VALUES ( :psd, :msg, NOW())");
$req->execute(array(':psd'=>$psd, ':msg'=>$msg));
}
}catch(PDOException $e){
echo " Erreur ! ".$e->getMessage();
}
json_encode($d);
?>
et ça marche à merveille.
merci jordane pour ta disponibilité
il n'accepte seulement pas que la connexion vienne d'autre part donc j'ai fait comme ceci
<?php
$pdo= new PDO('mysql:dbname=gzconseils; host=localhost', 'root', '');
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ);
$d = "";
try{
$psd = !empty($_POST['pseudo']) ? $_POST['pseudo'] : NULL;
$msg = !empty($_POST['message']) ? $_POST['message'] : NULL;
$act = !empty($_POST['action']) ? $_POST['action'] : NULL;
$_SESSION['pseudo'] = $psd;
if($act == "ajoutmsg"){
$req = $pdo->prepare("INSERT INTO message (pseudo, message, date) VALUES ( :psd, :msg, NOW())");
$req->execute(array(':psd'=>$psd, ':msg'=>$msg));
}
}catch(PDOException $e){
echo " Erreur ! ".$e->getMessage();
}
json_encode($d);
?>
et ça marche à merveille.
merci jordane pour ta disponibilité