Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1361 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  script de création de tables

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

script de création de tables

n°1129835
dcharles
Posté le 24-06-2005 à 14:05:03  profilanswer
 

bonjour,
J'ai un script en PHP qui me créer des tables SQL automatiquement. PAr contre je rencontre un petit soussi avec ce script quand je veux créer une table avec le nom suivant 2E1 ou 1E1 cela ne marche pas, la table n'est pas crée.Si je rajoute une lettre (2EE1 a la place de 2E1) cela fonctionne.
 
J'ai essayé de créer la table en manuelle à partir de PHPmyadmin et pas de problème.
 
de quoi cela peut il venir ?
 

mood
Publicité
Posté le 24-06-2005 à 14:05:03  profilanswer
 

n°1129847
Berceker U​nited
PSN : berceker_united
Posté le 24-06-2005 à 14:07:18  profilanswer
 

la réponse est dans le script qui génére tes tables. peux tu nous le montrer?

n°1129891
dcharles
Posté le 24-06-2005 à 14:16:08  profilanswer
 

script  
 
$id_connect=mysql_connect(xxxxxxxxxx);
mysql_select_db("trombi" );
$res_query=mysql_query("SELECT classe FROM eleve" );
 
while ($row=mysql_fetch_array($res_query))
{
mysql_query("create table if not exists $row[classe]"
."(nom TEXT NOT NULL,"
."prenom TEXT NOT NULL,"
."datenaiss TEXT NOT NULL)",$id_connect);
}
 
Voila en gros le script. Le script focntionne pour toute mes classes(TS1,TS2.........) par contre pour les 2E1,2E2.... marche pas, pas de création de table et pas de massage d'erreur

n°1130033
Berceker U​nited
PSN : berceker_united
Posté le 24-06-2005 à 15:01:19  profilanswer
 

j'avous que là je ne comprend pas trop que cela ne puisse pas fonctionner. Je peux te proposer la chose suivante.

Code :
  1. $id_connect=mysql_connect(xxxxxxxxxx);
  2. mysql_select_db("trombi" );
  3. $res_query=mysql_query("SELECT classe FROM eleve" );
  4. while ($row=mysql_fetch_array($res_query))
  5. {
  6. mysql_query("create table if not exists `".$row[classe]."`
  7. ."(nom TEXT NOT NULL,"
  8. ."prenom TEXT NOT NULL,"
  9. ."datenaiss TEXT NOT NULL)",$id_connect);
  10. }


Peut être que là cela va passer parce que je vois pas pourquoi sous phpMyadmin cela passe.

n°1130076
denzz
huhuuuuu ! (désolé )
Posté le 24-06-2005 à 15:30:35  profilanswer
 

mmmh
si j'ai 'compris' le principe, tu crées une table pour chaque classe, avec les 3 mêmes champs mais seul le nom de la table diffère...
 
Ca n'a "rien à voir" avec ton problème, mais tu n'aurais pas ce problème si tu savais modéliser une base de données correctement ...

n°1130112
Berceker U​nited
PSN : berceker_united
Posté le 24-06-2005 à 15:57:22  profilanswer
 

+4002 :jap: je confirme.


Message édité par Berceker United le 24-06-2005 à 15:57:35
n°1130271
dcharles
Posté le 24-06-2005 à 17:52:05  profilanswer
 

je ve bien, mais je suis en train d'apprendre à le faire. je lis beaucoup les docs et les aide que je trouve sur le net et sur ce forum,  n'ayant pas au départ une formation de gestion de base de donnée c pas tjs évident de saisir du premier coup les astuces.
 

n°1130282
snarky
Posté le 24-06-2005 à 18:02:34  profilanswer
 

sa serait pas plus simple ce créer un table avec  
- nom
- prenom
- datenaiss
- classe
 
?

n°1130325
dcharles
Posté le 24-06-2005 à 19:15:24  profilanswer
 

g deja une table qui regroupe tout les élèves , je regroupe ensuite tout les élèves d'une même classe dans une base qui est triée par ordre alphabétique et qui me permet ensuite d'afficher un trombinoscope de chaque classe.

n°1130345
snarky
Posté le 24-06-2005 à 19:52:38  profilanswer
 

c réalisable avec une seule table et sans avoir a dupliqué les eleves dans plusieurs tables

mood
Publicité
Posté le 24-06-2005 à 19:52:38  profilanswer
 

n°1130357
dcharles
Posté le 24-06-2005 à 20:15:45  profilanswer
 

cela me parai plus facilement gérable si g une table par classe, g 1300 élèves et 55 classes a pe prés

n°1130383
Berceker U​nited
PSN : berceker_united
Posté le 24-06-2005 à 20:56:25  profilanswer
 

regarde ce modele.
http://mapage.noos.fr/berceker_united/classes.gif
 
Grace a un identificateur unique tu associes un élève à une classe. si tu regarde bien l'idlasse de la table eleve correspond a l'idclasse de la tables classe.
Exemple d'enregistrement
 
Table ELeve
Roberto  1
Charle   1
Antoine  1
Flora    2
Katia    2
 
Table Classe
 1 CM1A  
 2 CM1B
 
 
Roberto, Charle et Antoine sont dans la classe CM1A alors que Flora et Katia sont en CM1B
 
Pour faire une requete voici les différente synthaxe.
 
Je veux récupérer les éléve de cm1A si tu as l'id
SELECT * FROM eleve WHERE idclasse = 1
 
sinon par le nom de la classe.
SELECT eleve.* FROM eleve,classe WHERE eleve.idclasse=classe.idclasse AND classe.nom ='CM1A'
 
 
 
Je veux savoir dans quelle classe se trouve Roberto
SELECT classe.nom FROM eleve, classe WHERE eleve.idclasse=classe.idclasse AND eleve.nom ='Roberto'


Message édité par Berceker United le 24-06-2005 à 21:05:09
n°1130573
dcharles
Posté le 25-06-2005 à 07:29:00  profilanswer
 

petit problème :  gestion des doublons. En fait dans l'éducation nationnale chaque élève est identifié par un numéro nationnal unique. L'identification ne pe se faire sur le nom et le prénom de l'élève. Je t'explique en gros ce que j'ai commencé à faire. Dans la base élève j'ai regroupé le NOM, le PRENOM, la DATE DE NAISSAINCE et le NUMERO NATIONNAL Cette première base est mise à jour automatiquent par l'intermèdiaire d'un fichier CSV(extrait de l'application GEP). Ensuite par l'intermèdiaire d'un script j'initialise les autres tables avec NOM, PRENOM, DATE DE NAISSANCE et un nouveau champ qui est le nom de la photo. J'affiche ensuite ces différentes données à l'écran. L'initialisation des différentes tables va se faire une seule fois en début d'années j'ai ensuite créé des scripts de mise à jour pour les nouveau élèves et ceux qui quittent l'établissement.
 
 
C vrai que j'aurrais pu regroupé toutes les infos dans une seule table et c d'ailleurs ce que j'avais commencé à faire avec une sélection suivant la classe et le numéro nationnal mais je trouve plus simple avec une table par classe, chacun sa facon de voir. C plus simple de lire une table de 30 éléments que de faire un tri à chaque fois sur une table de 1300 éléments. Avec ma méthode la table élève n'est lu qu'une seule fois.
 
Voila pour ce qui est du prob de création de table je pe contourner le prob en rajoutant une lettre à 2E1 et créer la table 2EE1(avec ce nom pa de prob) mais cela ne me plai pas parceque je ne vois pas d'ou peut provenir le problème et j'amerais savoir ce qui cloche dans le script.
 
G également essayé de faire :
# while ($row=mysql_fetch_array($res_query))
# {
   $class="2E1";  
   mysql_query("create table if not exists $class"
# ."(nom TEXT NOT NULL,"
# ."prenom TEXT NOT NULL,"
# ."datenaiss TEXT NOT NULL)",$id_connect);
# }
 
avec le même résultat pas de création de table et aucun message d'erreur.

n°1130595
Berceker U​nited
PSN : berceker_united
Posté le 25-06-2005 à 10:25:24  profilanswer
 

En faite, je crois que tu oublie un peut l'utilisation d'une base de données. Si tu répliques des tables ayant les mêmes champs les mêmes caracteristiques c'est qu'il y a un probleme de conception. Ta méthode n'est pas une façon de voir. Une base de données est fait ranger des données d'une certaine maniere de telle qu'un systeme tiers puisse récupérer les informations de façon correcte. Généralement c'est un language. Là tu veux directement lire le contenu d'une table via phpmyadmin. :non: ce n'est pas fait pour ça.
Concernant l'identification nationnal tu peux le place cela ne pose pas de probleme. dans le champ ideleve si cela est un identificateur unique.

n°1130846
dcharles
Posté le 25-06-2005 à 16:49:17  profilanswer
 

bon ok ,je vai suivre ta méthode(bien que je ne sois pas encore totalement convaincu) et voir ce que cela donne. Je vais donc regrouper toutes mes infos dans une seul table.  
 
Par contre je voudrais quand même savoir ce qui cloche dans le script et pourquoi la création de la table 2E1 ne se fait pas
 
Merci de m'avoir accorder du temps et de m'avoir aider

n°1130971
Berceker U​nited
PSN : berceker_united
Posté le 25-06-2005 à 21:27:36  profilanswer
 

Je t'ais donné une solution plus haut. Il faut placer des =>` autour du nom de la table. Touche AltGr+è+[espace]

n°1133096
dcharles
Posté le 28-06-2005 à 05:53:10  profilanswer
 

ok c bon , je te remercie et je me remet à mon exportation au foramt PDF

n°1133139
yoyo354
Yoyo, le roi du ...
Posté le 28-06-2005 à 09:09:02  profilanswer
 


C'est avec quoi que tu fais ça  [:cvb] Je trouve ça  [:akilae]


---------------
http://yoyo.eurotchat.net -> Wednesday 14 September a 02:00:01 up 43 days, 11:47,  2 users,  load average: 0.07, 0.03, 0.00
n°1133168
Berceker U​nited
PSN : berceker_united
Posté le 28-06-2005 à 09:32:09  profilanswer
 

visio 2003. il a l'avantage de ce connecter via odbc a une base de données et de récupérer les caracterisiques.

n°1133191
yoyo354
Yoyo, le roi du ...
Posté le 28-06-2005 à 09:49:00  profilanswer
 

Berceker United a écrit :

visio 2003. il a l'avantage de ce connecter via odbc a une base de données et de récupérer les caracterisiques.


C'est pas mal, mais 130€ à 645€ sur kelkoo  [:athlonmp]  
 
Y aurai-t-il des équivalents gratuit pour les étudiants en manque ?  [:pingouino]


---------------
http://yoyo.eurotchat.net -> Wednesday 14 September a 02:00:01 up 43 days, 11:47,  2 users,  load average: 0.07, 0.03, 0.00
n°1133236
plainsofpa​in
Pingouino's lover
Posté le 28-06-2005 à 10:26:15  profilanswer
 

dia peut-etre ?
 
http://www.gnome.org/projects/dia/
 
Il y a un plugin uml2php5 qui permet de faire des diagrammes uml et de générer les classes en php 5 :D


---------------
http://www.alsacreations.com , http://www.openweb.eu.org. Mon CV : http://cv.roane-irkana.net/. Exemple à ne surtout pas suivre : www.worldinternet.be
mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  script de création de tables

 

Sujets relatifs
Création de page html avec AccessInsert Into avec creation de table
[Résolu]Script : extraction des appels de fonctionsgif dans un script php gallerie
Image transparente sur texte ou script,....c'est quoi qui cloche dans mon script
lancer un script PHP depuis serveurVB6/SQL Empêcher la création de doublons dans une Listbox
Création dynamique d'un tableau de taille non fixéeAccess: Exporter le script de création des tables d'une bd
Plus de sujets relatifs à : script de création de tables


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR