[PHP] Insertion dans bdd

Résolu/Fermé
digival Messages postés 193 Date d'inscription mercredi 14 octobre 2009 Statut Membre Dernière intervention 7 novembre 2010 - 14 févr. 2010 à 15:46
digival Messages postés 193 Date d'inscription mercredi 14 octobre 2009 Statut Membre Dernière intervention 7 novembre 2010 - 21 mars 2010 à 19:35
Bonjour,

J'utilise ce script pour inscrire les visites dans ma bdd :
<?php 
include('monsite/connect-bdd.php'); 
// inscription dans la bdd
$nom = mysql_real_escape_string( ucfirst( strtolower($_POST['nom']) ) );
if( $nom != ucfirst( strtolower('Test')) )
{
    mysql_query("INSERT INTO visites VALUES('', '$nom', '$date')");
 }
// décconnexion de la bdd
mysql_close();
?>


Et enfin cette structure-là dans ma table :
id -> mediumint(11) , AI
nom -> varchar(50) , latin1_swedish_ci
date -> varchar(50) , latin1_swedish_ci

Je ne comprends pas pourquoi rien ne s'enregistre dans ma table ?!
A voir également:

11 réponses

giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 142
14 févr. 2010 à 17:35
Bonjour,

essayez ainsi

mysql_query("INSERT INTO visites VALUES(0, '$nom', '$date')");
0
digival Messages postés 193 Date d'inscription mercredi 14 octobre 2009 Statut Membre Dernière intervention 7 novembre 2010 1
14 févr. 2010 à 19:50
Bien essayé et testé, mais sans succès :(
0
giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 142
14 févr. 2010 à 22:58
mal essayé ça fonctionne chez moi !
0
UgglyBoy Messages postés 422 Date d'inscription mercredi 24 septembre 2008 Statut Membre Dernière intervention 30 mai 2015 64
14 févr. 2010 à 22:06
et comme ceci:
mysql_query ("INSERT visites SET nom = '$nom', date = '$date'");
0
digival Messages postés 193 Date d'inscription mercredi 14 octobre 2009 Statut Membre Dernière intervention 7 novembre 2010 1
15 févr. 2010 à 19:29
Super merci ;)

Seulement, maintenant je souhaiterait importer ma table dans mon localhost. Je fais bien toute la manip' mais j'ai cette erreur :

Erreur

requête SQL:
Base de données: `...`
Structure de la table `visites`
CREATE TABLE IF NOT EXISTS `visites` (
`id` mediumint( 11 ) NOT NULL AUTO_INCREMENT ,
`nom` varchar( 50 ) NOT NULL ,
`date` varchar( 60 ) NOT NULL ,
PRIMARY KEY ( `id` )
) ENGINE = MYISAM DEFAULT CHARSET = latin1 AUTO_INCREMENT =7;

MySQL a répondu:Documentation
#1046 - No database selected


Les versions de mysql, du serveur web et de phpMyAdmin ne sont pas les mêmes. J'ai donc essayé avec le Mode de compatibilité SQL en Mysql40, mais voici ce que ça m'affiche :

Erreur

requête SQL:
Base de données: `...`
Structure de la table `visites`
CREATE TABLE IF NOT EXISTS `visites` (
`id` mediumint( 11 ) NOT NULL AUTO_INCREMENT ,
`nom` varchar( 50 ) NOT NULL ,
`date` varchar( 60 ) NOT NULL ,
PRIMARY KEY ( `id` )
) TYPE = MYISAM AUTO_INCREMENT =7;

MySQL a répondu:Documentation
#1046 - No database selected


Merci de ton aide ;)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
UgglyBoy Messages postés 422 Date d'inscription mercredi 24 septembre 2008 Statut Membre Dernière intervention 30 mai 2015 64
15 févr. 2010 à 23:38
si tu veux importer ta table il faut lui indiquer dans quelle base... lit ce que dit mysql:
#1046 - No database selected 


sinon, importe aussi ta base dans ton localhost.
0
digival Messages postés 193 Date d'inscription mercredi 14 octobre 2009 Statut Membre Dernière intervention 7 novembre 2010 1
16 févr. 2010 à 20:13
en fait, je voudrai importer ma base, mais comme ça marchait pas j'ai essayé la table...

Mais comment l'indiquer ?
0
UgglyBoy Messages postés 422 Date d'inscription mercredi 24 septembre 2008 Statut Membre Dernière intervention 30 mai 2015 64
17 févr. 2010 à 00:07
CREATE DATABASE [IF NOT EXISTS] db_name


qu'on peut lire ici:
http://dev.mysql.com/doc/refman/5.0/fr/create-database.html
0
digival Messages postés 193 Date d'inscription mercredi 14 octobre 2009 Statut Membre Dernière intervention 7 novembre 2010 1
21 mars 2010 à 17:40
Mais où j'écris ça ?
0
giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 142
21 mars 2010 à 19:20
Bonsoir,

il faut faire le point.
il faut une base avant de créer des tables.
as-tu créer ta base dans ton localhost ? soit create database comme te le répète Ugglyboy, soit avec phpmyadmin (si tu as easy php / wamp )
ensuite le create table ne peut fonctionner que si la base est connectée (ou sélectionnée), or le message est clair tu n'es pas connecté.

sur ta dernière question : j'écris ça où ?
tout dépend :
en ligne de commande sql,
ou en ligne de commande dans phpmyadmin
ou en créant une requête dans un script php

alors je pense qu'il te faut revoir quelques bases de sql

dans le script initial :
<?php
include('monsite/connect-bdd.php'); //la connexion est-elle bonnne?
// inscription dans la bdd
$nom = mysql_real_escape_string( ucfirst( strtolower($_POST['nom']) ) );
if( $nom != ucfirst( strtolower('Test')) )
{
mysql_query("INSERT INTO visites VALUES('', '$nom', '$date')");

// la table vistes existe-t-elle ?
}
// décconnexion de la bdd
mysql_close();
?>

0
^^Marie^^ Messages postés 113929 Date d'inscription mardi 6 septembre 2005 Statut Membre Dernière intervention 28 août 2020 3 274
21 mars 2010 à 19:32
Salut

Y'avait un beug, donc à priori cela fonctionne
0
digival Messages postés 193 Date d'inscription mercredi 14 octobre 2009 Statut Membre Dernière intervention 7 novembre 2010 1
21 mars 2010 à 19:35
Alors là, giheller, respect pour ta super réponse.

Mon problème est enfin Résolu !

Merci beaucoup à toi ;)
0