Envoyer des données d'un formulaire a PHPMYADMIN

Fermé
Killerbee - Modifié le 11 août 2019 à 13:33
jordane45
Messages postés
35801
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
5 juillet 2022
- 11 août 2019 à 19:18
Salut je suis actuellement entrain de faire un site
(je raconte ma vie) mais je suis bloquée a la base de données php j'arrive a me connecter a ma base de données PHPMYADMIN mais ensuite les données ne s'inscrivent pas je vous met ci joint mon code:
<?php
  $host_name = 'xxxx';
  $database = 'xxxx';
  $user_name = 'xxxx';
  $password = xxxx';
  $connect = mysqli_connect($host_name, $user_name, $password, $database);
    $mysqli_options[MYSQLI::ATTR_ERRMODE]=MYSQLI::ERRMODE_EXCEPTION;
  $mysqli->setAttribute(MYSQLI::ATTR_CASE, MYSQLI::CASE_LOWER);
  $mysqli->setAttribute(MYSQLI::ATTR_ERRMODE, MYSQLI::ERRMODE_EXCEPTION);;


  if (mysqli_errno()) {
    die('<p>La connexion au serveur MySQL a échoué: '. mysqli_error().'</p>');
  } else {
    echo '<p> Connecté</p >';
  }
?>


Mais voila que ensuite il m'affiche l'erreur suivante:Uncaught Error: Undefined class constant 'ATTR_ERRMODE' in patatipatata
J'attends vos réponses avec impatience!

3 réponses

yg_be
Messages postés
19571
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
5 juillet 2022
1 131
Modifié le 11 août 2019 à 16:45
bonjour, à quoi sert la ligne 7?
sur quelle ligne obtiens-tu une erreur?
de quoi t'es tu inspiré pour écrire ce code?
a-t'il jamais fonctionné?
1
jordane45
Messages postés
35801
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
5 juillet 2022
4 204
11 août 2019 à 18:19
Bonjour,

Pour commencer.. ta Base de données.. ce n'est pas phpmyadmin... mais Mysql.
PhpMyadmin n'est qu'une interface (écrite en php) qui te permet de manipuler cette base

Ensuite.. ton code mélange différentes choses...
Du stylé "procédural" et du style "objet".
Sans parler du fait que tu as vraisemblablement utilisé un code pour PDO que tu as essayé de mettre à la sauce mysqli... mais ça ne marche pas !
(pour preuve... la méthode setAttribute qui n'est utilisée qu'en PDO ! )

Bref.. si tu veux réaliser la connexion à ta base en mysqli ... il faut utiliser la syntaxe
$mysqli = new mysqli("localhost", "my_user", "my_password", "mabdd");

/* Vérification de la connexion */
if ($mysqli->connect_errno) {
    printf("Echec de la connexion: %s\n", $mysqli->connect_error);
    exit();
}



Et si tu veux la faire en PDO
try{
$bdd =new PDO('mysql:host=localhost; dbname=mabdd; charset=utf8', 'my_user', 'my_password');
// Activation des erreurs PDO
 $bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// mode de fetch par défaut : FETCH_ASSOC / FETCH_OBJ / FETCH_BOTH
 $bdd->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
} catch(PDOException $e) {
    die('Erreur : ' . $e->getMessage());
}


1
Mille merci pour cette reponse detaillé effectivement j'ai un peux tout mélangé...Je viens d'essayer votre code (la connexion est effectué) mais les données ne s'inscrivent toujours pas...Ci joint le code du fichier qui trie les données:

<?php
session_start();
require('dbconnect.php');
$nom=$_POST['nom'];
$email=$_POST['email'];
$message=$_POST['message'];
echo "Votre Nom est:".$nom."<br>Votre Email est:".$email."<br>Votre Message est:".$message;

$insert=$PDO("INSERT INTO Register(nom, email, message) VALUES(?,?,?)");
$insert->execute(array($nom,$email,$message));
header('Location:Formulaire.html');


?>

Ca m'affiche le message suivant : Uncaught Error: Function name must be a string in (a la ligne 10)

Merci d'avance pour vos réponses
0
jordane45
Messages postés
35801
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
5 juillet 2022
4 204
11 août 2019 à 19:18
Tu oublies la moitié des mots....
Normal que tin code ne fonctionne pas...

Commence par appliquer ceci
https://www.commentcamarche.net/faq/46512-pdo-gerer-les-erreurs

Puis ça :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code

Et à l'avenir, merci de poster ton code correctement !
Comme indiqué dans ce lien

https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code


.


0