minimouse31 Posté 10 Décembre 2013 Posté 10 Décembre 2013 Bonjour à tous, j'ai créé une base de données avec une table qui se nomme concert - la structure de ma table est la suivante : Structure de la table `contact`--CREATE TABLE IF NOT EXISTS `contact` ( `id_contact` int(11) NOT NULL AUTO_INCREMENT, `nom` varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL, `prenom` varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL, `mail` varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL, `concert` varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL, `comment` text CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL, PRIMARY KEY (`id_contact`)) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ; j'ai un formulaire en php qui commence par ce code : <?phpinclude('connexion.php');$action=isset($_REQUEST['action'])?$_REQUEST['action']:'';$id_contact=isset($_REQUEST['id_contact'])?$_REQUEST['id_contact']:0;$nom=isset($_REQUEST['nom'])?$_REQUEST['nom']:'';$prenom=isset($_REQUEST['prenom'])?$_REQUEST['prenom']:'';$email=isset($_REQUEST['email'])?$_REQUEST['email']:'';$concert=isset($_REQUEST['concert'])?$_REQUEST['concert']:'';$message=isset($_REQUEST['comment'])?$_REQUEST['comment']:'';if($action=='envoyer'){ $req="INSERT INTO contact VALUES(NULL,'{$nom}','{$prenom}','{$email}','{$concert}','{$comment}')"; $envoie=mysqli_query($connex,$req); header('Location:form_envoi.php'); exit;} ?> et dans connexion.php j'ai ce code <?php$connex=mysql_connect('mysql5-16.240','nom de ma bdd','mot de passe pour accéder à ma bdd','contact');mysql_query($connex,"SET NAMES 'utf8'");?> j'ai un message d'erreur sur connexion.php en ligne 3 et je ne vois pas pourquoi ... encore merci pour votre aide car ce n'est pas ma première demande d'aide sur ce forum ...
captain_torche Posté 10 Décembre 2013 Posté 10 Décembre 2013 C'est parce que tu n'as pas spécifié de base de données. Ton code devrait ressembler à ça : <?php $connex=mysql_connect('mysql5-16.240','login','mot de passe'); mysql_select_db('ta_bdd'); mysql_query("SET NAMES 'utf8'"); // Le nom de la connexion est facultatif
minimouse31 Posté 10 Décembre 2013 Auteur Posté 10 Décembre 2013 merci à toi mais je ne comprends pas ? ma bdd est déjà spécifié dans <?php $connex=mysqli_connect('mysql5-16.240','NOM DE MA BDD','mot de passe','contact'); ?>
captain_torche Posté 10 Décembre 2013 Posté 10 Décembre 2013 Ton premier message mentionne mysql_connect et non mysqli_connect. Tu ne peux pas spécifier le nom de la base avec mysql_connect. Ensuite, attention à ne pas mélanger les fonctions mysql_xxx (dépréciées) avec mysqli !
minimouse31 Posté 10 Décembre 2013 Auteur Posté 10 Décembre 2013 oui ... c'est vrai ... j'ai donc essayé en laissant msqli dans connexion.php et mon formulaire de contact, rien ... j'ai donc essayé avec mysql et pas mieux ... je dois me tromper dans l'appel de la base de données !! pourtant en regardant mes cours j'ai bien ce truc là
Message populaire. captain_torche Posté 10 Décembre 2013 Message populaire. Posté 10 Décembre 2013 J'ai mis à jour mon code en verion mysql_xxx : il devrait fonctionner maintenant. 1
minimouse31 Posté 10 Décembre 2013 Auteur Posté 10 Décembre 2013 oui... Warning: mysql_query() expects parameter 1 to be string, resource given in /homez.647/.../connexion.php on line 4 et mon code <?php $connex=mysql_connect('mysql5-16.240','nom de ma base','mot de passe'); mysql_select_db ('contact', $connex) ; mysql_query($connex,"SET NAMES 'utf8'"); ?>
captain_torche Posté 10 Décembre 2013 Posté 10 Décembre 2013 Forcément, si tu ne relis pas le code que j'ai proposé, tu n'iras pas loin. Relis le bien et applique les modifications nécessaires.
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant