céer une table myslq avec php

céer une table myslq avec php - PHP - Programmation

Marsh Posté le 25-07-2008 à 10:55:33    

Bonjour,
Je travaille sur un site qui a été commencé par quelqu'un d'autre. Là, je dois créer une table dans la base de données. Je sais qu'il faut utiliser la commande create table mais je ne sais pas dans quel fichier écrire ma requête. Bien sûr vous ne connaissez les fichiers dont je dispose,lol, mais je voudrais savoir s'il faut juste l'écrire dans un fichier quelconque parmi ceux que j'ai ?  
 
En attendant vos aides, mici ;)

Reply

Marsh Posté le 25-07-2008 à 10:55:33   

Reply

Marsh Posté le 25-07-2008 à 11:01:29    

ouah d'aprés ce je comprend, tu as pas l'air bien avec  php et mysql ,
je crois que toi tu peut va pouvoir aller faire un tour sur les tutoriaux
http://www.phpsources.org/tutoriel-introduction.htm
http://www.phpsources.org/tutoriels-MySQL.htm
 
ta requete tu la fait ou tu veut, dans n'importe quel fichier.
C'est a toi de voir ca.
Mais apres pour créer ta table, si c'est pas une table crée dynamiquement, tu peut la créer à la main, grâce à ton interface de gestion de base de donnée(c'est beaucoup plus rapide, et plus simple si tu maitrise pas tout le langage sql)
 
voici un exemple que j'ai trouve sur le net

Code :
  1. <?php
  2.  
  3. //  Connect to our database
  4. //  ----------------------------------
  5. // $conn = dbconnect();
  6.  
  7. $sql = 'DROP TABLE IF EXISTS `zones`';
  8. mysql_query( $sql, $conn );
  9.  
  10. $sql = 'CREATE TABLE `zones` (
  11.        `zid` TINYINT( 3 ) UNSIGNED NOT NULL AUTO_INCREMENT,
  12.        `zdesc` VARCHAR( 150 ) NOT NULL,
  13.        `zwidth` SMALLINT( 3 ) DEFAULT 0 NOT NULL,
  14.        `zheight` SMALLINT( 3 ) DEFAULT 0 NOT NULL,
  15.        `zmax` MEDIUMINT(7) unsigned NOT NULL default 12288,
  16.        PRIMARY KEY ( `zid` )
  17.       )';
  18. echo 'Creating table: \'zones\'....';
  19. mysql_query( $sql, $conn );
  20.  
  21. $sql = 'DROP TABLE IF EXISTS `bcategory`';
  22. mysql_query( $sql, $conn );
  23.  
  24. $sql = 'CREATE TABLE `bcategory` (
  25.         `bid` int(10) NOT NULL default 0,
  26.         `cid` int(10) NOT NULL default 0,
  27.         PRIMARY KEY ( `bid`, `cid` )
  28.       )';
  29. echo 'Creating table: \'bcategory\'....';
  30. mysql_query( $sql, $conn );
  31.  
  32. ?>


Message édité par infoman64 le 25-07-2008 à 11:04:29
Reply

Marsh Posté le 25-07-2008 à 11:33:06    

En effet, chui pas une pro en php mysql :p . Mici pour les tuto et le code. Par contre, si je fais la requête, est-ce qu'elle va s'exécuter chaque fois qu'on ira sur la page, si c'est le cas, elle risque d'écraser la table chaque fois et de la récréer chaque fois qu'on va sur la page.  
 
Exemple: je mets ma requete dans le fichier toto.php Après, je vais sur la page www.site.com/toto.php, la table sera t'elle effacée puis recréée?
 
Je sais pas quel sgbd ils avaient utilisé, moi j'utilse juste dreamweaver pour le code. C'est pour ça qu'il me faut utiliser des requetes mysql avec php.

Reply

Marsh Posté le 25-07-2008 à 11:38:50    

ouais si tu met ce code dans ta page , a chaque fois que tu ira dessus
la table sera effacé et recrée .(effacé et recrée si tu met "DROP TABLE IF EXISTS', sinon tu auras une erreur)
As tu accés à l'interface de gestion de ta BD?
car comme ca tu crée un bonne fois pour toute ta table, pas besoin de t'embeter a la mettre dans une page.
Aprés peut etre tu veut peut etre passer par la page pour t'entrainer a créer des tables avec la requete , mais tu peut aussi executer des requetes sur l'interface de gestion


Message édité par infoman64 le 25-07-2008 à 11:39:28
Reply

Marsh Posté le 25-07-2008 à 11:50:00    

Nan, j'ai pas accès a l'interface de gestion de la BD :(.  
Après création de ma table, je dois y insérer des données qui sont stockées dans une feuille excel. Pour l'extraction des données, vais chercher sur le net, voir comment m'y prendre, si je m'en sors tant mieux sinon, vais créer un autre post pour ça. Pour l'instant, vais créer ma table.

Reply

Marsh Posté le 25-07-2008 à 12:02:14    

ton site il est sous quel hebergeur?  
c'est toi qui l'heberge?
 
pour l'extration, si tu as besoin , je te passerai les miennes,  
je faits de l'import vers ma bd depuis un fichier CSV(csv est un fichier excel convertit)

Reply

Marsh Posté le 25-07-2008 à 17:43:29    

tu as forcement un accès à ta bd (client mysql ou phpmyadmin au pire) et donc créé la table de cette facon et non en php ou alors en php mais supprime le fichier ensuite

Reply

Marsh Posté le 25-07-2008 à 17:59:48    

vraiment? on a forcément un accès à la db? flute, j'suis vraiment bete, moi j'me suis galéré à coder une interface à la main pour gérer ma db (qui est sur un serveur ovh)
 
...


---------------
arg(z) = pi /2 donc z = i, moi je prends pas
Reply

Marsh Posté le 25-07-2008 à 18:02:25    

ben sur les serveurs ovh tu as surment l'outils phpmyadmin de fournit ou un truc du meme genre, une interface web mais qui te donne accès à ta base

Reply

Marsh Posté le 26-07-2008 à 10:27:49    

Le site est hébergé par : NS25A.HAISOFT.NET  
Moi j'ai pas accès à la bd. Et donc j'ai créé ma table à la main sauf que là, ca marche pas :(
 

Code :
  1. $req_table = "CREATE TABLE IF NOT EXISTS adresse(
  2.   'id' SMALLINT(5) not null AUTO_INCREMENT,
  3.   'email' VARCHAR(50) not null,
  4.   primary key(id)
  5.   )";
  6. mysql_query($req_table);
  7. $req_ess = "insert into adresse(id, email) values(1, 'esssai')";
  8. mysql_query($req_ess);
  9. $req_ass="select * from adresse";
  10. $res_ass = mysql_query($req_ass);
  11. $rr = mysql_num_rows($res_ass);
  12. echo $rr;


 
Voilà mon code et quand je l'ai exécuté, il me donne comme message d'erreur :  
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/httpd/vhosts/site.com/httpdocs/admin/mail.php on line 182
(sachant que la ligne 182 correspond à : $rr = mysql_num_rows($res_ass); )

Reply

Marsh Posté le 26-07-2008 à 10:27:49   

Reply

Marsh Posté le 26-07-2008 à 14:31:32    

si tu cherchais un petit chouia, tu te rendrais compte qu'il existe une fonction qui permet de retourner l'erreur, ce qui est bien pratique pour la résoudre ... Mais tout le monde n'est pas développeur, je le conçois.
 
commence par tester ça :

Code :
  1. $res_ass = mysql_query($req_ass) or die($req_ass."<br>".mysql_error());


 
S'il ne te retourne pas d'erreur, c'est que la requête s'est bien effectuée. Autrement, il retourne une erreur, en affichant la requête qu'il a tenté de faire et arrête l'exécution du code.


---------------
NewsletTux - outil de mailing list en PHP MySQL
Reply

Marsh Posté le 27-07-2008 à 23:09:51    

@ newsletTux : Tout le monde n'est pas obligé de répondre.
 
 
 
J'ai créé ma table et j'ai réussi à insérer mes données excel dedans. J'ai trouvé cette page qui m'a aidé : http://cherbe.free.fr/xl2mysql1.php#obj1 .
 
infoman64, pour l'extraction, tu peux toutefois m'envoyer les tiennes, ca me fera un plus :)
Merci pour vos aides et merci beaucoup à toi infoman64.

Reply

Marsh Posté le 28-07-2008 à 23:46:04    

starflor > Désolé si tu as mal pris mon intervention, le but n'était pas de t'offenser. Je souhaitais juste attirer ton attention sur le réflexe que quelqu'un sui s'intéresse au développement devrait avoir, ou acquérir, qui est celui de :
1. afficher les erreurs
2. afficher les contenus des variables
3. faire une recherche si l'erreur n'est pas explicite
 
beaucoup de gens se trouvent confrontés au problème et postent alors même que l'affichage, ne serait-ce que d'un seul des 3 points précédemment cités les aurait vachement aiguillé ...
 
Content que tu aies pu trouver une solution, toutefois.


---------------
NewsletTux - outil de mailing list en PHP MySQL
Reply

Marsh Posté le 29-07-2008 à 09:58:12    

Je vois. C'est que j'avais pas compris comme ça. ;)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed