php et les bdd - tout simplement ...

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : php et les bdd - tout simplement ...

par ptitgenie69 » 27 sept. 2006, 13:02

Alors pour créer la base, j'ai bien compris.

par contre, j'utilise ce code pour verifier si une table existe avant de la créer :

Code : Tout sélectionner

$db = mysql_connect('localhost', 'root', ''); mysql_select_db('ext',$db); $vslve = mysql_query("SELECT visites USER_TABLES"); if ($vslve) { print 'table deja la'; } else { mysql_query("CREATE TABLE `visites` (`visits` INT( 0 ) NOT NULL)"); print 'table créé'; }
mais cela me repond toujours que la table existe pas alors qu'elle a été créé sans soucis. Donc c'est la vérification quyi bug parce que cela ne doit pas etre la bonne instructions je présume ...

PS : est ce que c'est indispensable de faire cette vérification en php ? en fait est ce qu'il créer a chaque fois la table meme si elle estd eja présente ?

EDIT :

j'ai remplacer par cela et sa a l'air de fonctionner :

Code : Tout sélectionner

$db = mysql_connect('localhost', 'root', ''); mysql_select_db('ext',$db); mysql_query("CREATE TABLE IF NOT EXISTS visites (`visits` INT( 0 ) NOT NULL)");
mais est-ce bon ?

par iclo » 27 sept. 2006, 12:11

Comme tu le dis dans ton premier poste, je vais passer pour un empêcheur de tourner en rond, :D mais quand je vois des tutorials tel que celui-ci http://www.phpfrance.com/tutoriaux/inde ... bles-mysql, je ne comprends pas pourquoi demander aux membres du forum de tout réexpliquer. Il vaut franchement mieux prendre deux minutes pour lire un tutorial et acquérir de bonnes bases sur le sujet, plutot que de vouloir foncer avec de petits fragments de code pêché sur le net, incomplets, peu ou pas commenté et qui souvent ne prennent pas en charge la gestion des erreurs.

Apprendre maintenant, te feras gagner beaucoup de temps, par la suite, lorsque tu dévelloperas

par fred9999 » 27 sept. 2006, 09:58

salut en fait pour l'ajout d'une base se serait l'imbrication des deux :

ex:
$query="CREATE DATABASE mabase;";
$result=mysql_query($query);

par momox » 27 sept. 2006, 07:30

Justement, il te dit que la fonction est trop vieille, il te suffit de faire une simple requête

Code : Tout sélectionner

CREATE DATABASE `nom de la bdd`
@+

par ptitgenie69 » 27 sept. 2006, 00:29

merci ^^

je sais maintenant ouvrir une base de donnée, voici le code pour ceux qui le voudrait :

Code : Tout sélectionner

<?php $db = mysql_connect('localhost', 'root', ''); mysql_select_db('ext',$db); ?>
Question suivante, comment puis-je vérifier si une table existe ? en l'occurence la table 'stats' , et le cas échéant, la créé ?

Question subsidiaire : lorsque je veux créer une nouvelle bdd, j'utilise le code :

Code : Tout sélectionner

mysql_create_db("ext2");
et le messaged 'erreur suivant m'est retourné :
Notice: mysql_create_db(): This function is deprecated, please use mysql_query() to issue a SQL CREATE DATABASE statement instead. in c:\program files\easyphp1-8\www\ext-files.com\visites.php on line 5
alors qu'il me cré quand meme la base !! je trouve cela bizarre ...


merci ...

par Cyrano » 27 sept. 2006, 00:17

Tiens : le minimum basique pour commencer avec MySQL.

par ptitgenie69 » 27 sept. 2006, 00:14

Alors, j'ai été voir le tuto. très bon tuto et j'ai eu un 16/20 au quizz ^^

Sinon, pour les réponses rapides, elles sont encore trop général pour moi donc je vais les refaires une a une et quand j'ai bien assimilé, je passe a la suivante, cela sera mieux non ?

Donc première question ?

comment puis-je acceder a phpmysql et ouvrir la base de donnée "ext" ?

par Cyrano » 27 sept. 2006, 00:05

Salut,
pour te donner des réponses rapides :
- Comment accéder à une base : ça dépend quelle type de base, il existe en natif dans PHP des pilotes pour pas mal de sortes de SGBD, reste à savoir lequel tu utilises pour activer le pilote correct et ensuite nous préciser ce type pour qu'on te dirige vers les fonctions appropriées;

- Comment vérifier l'existence d'une table : exécuter en SQL une commande du genre SHOW TABLES; et récupérer la liste retournée afin de vérifier si la table recherchée s'y trouve;

- Comment créer une table : Toujours en SQL CREATE TABLE `nom-de-la-table` suivi des colonnes, types, et autres détails;

- Comment lire ou enregistrer dans une table : toujours le SQL, on pourrait créer un chapitre complet sur le sujet;

- Pourquoi utiliser plusieurs variabledans une tableet non pas plusieurs tables ? Dans une table, on ne parle pas de variable mais de colonnes et là, on touche à la modélisation d'une base de données : on pourrait sur le sujet écrire carrément un bouquin complet.

En conclusion, il serait préféreable que tu essayes d'avancer par étape et que tu poses des questions sur des points plus précis pour avoir des réponses plus appropriées. Question générale = réponse générale.

par momox » 26 sept. 2006, 23:57

Euh, je vais te filer un petit tutorial très simple a comprendre:
Clique ici
Si tu n'y connais rien a mysql, cela pourra t'aider :)
@+

php et les bdd - tout simplement ...

par ptitgenie69 » 26 sept. 2006, 23:42

Bonsoir (il est dejà tard ^^)

Alors je decide de poser ces questions, au risque de recevoir des réponses qui me disent de fouiller sur le site ou sur google :

- Comment acceder a une base de donnée ?
- Comment vérifier l'existence d'une table ?
- Comment créer une table ?
- Comment lire ou enregistrer dans une table ?
- Pourquoi utiliser plusieurs variabledans une tableet non pas plusieurs tables ?

voila! je sais que c'est presque un chapitre de texte mais je recherche plus une réponse simple. car bien sur j'ai chercher mais je ne trouvais que des exemples compliqué ou avec trop de donnée et je ne trouve pas un exemple simple !

merci par avance pour vos réponses ...