JeuWeb - Crée ton jeu par navigateur
inserer des données dans une bd - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : inserer des données dans une bd (/showthread.php?tid=288)



inserer des données dans une bd - mloolm - 02-10-2006

bonjour
je voudrai inserez des données veneant d un fichier texte dans ma base de donnée
etant debutant dans le php j ai quelques problemes pour le realiser

quelqu un pourait il m aider??

j ai 1 base de donnée
Citation :CREATE TABLE `resulta` (
`id` int(5) NOT NULL auto_increment,
`date` varchar(10) NOT NULL default '',
`heure` varchar(10) NOT NULL default '',
`resultat` char(2) NOT NULL default '',
`victime` varchar(20) NOT NULL default '',
`unite` varchar(10) NOT NULL default '',
`bat` varchar(5) NOT NULL default '',
`or` varchar(5) NOT NULL default '',
`terre` varchar(5) NOT NULL default '',
KEY `id` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

et voici mon texte
Citation :01/10 à 17:18 V Elvonia 378 2 645 0 0 %
01/10 à 17:27 D Meramwen 2479 0 0 0 -
01/10 à 17:35 V Bedoc 0 1 4 0 0 %
01/10 à 17:42 V Bedoc 0 0 3 0 0 %

donc je voudrai par exemple pour ma 1ere ligne
01/10=> date
17:18=>heure
V=>resultat
Elvonia=>victime
378=>unite
2=>bat
645=>or
0=>terre

et ainsi desuite pour les autres lignes

merci d avance
@+mloolm


RE: inserer des données dans une bd - Plume - 02-10-2006

Tu veux qu'on te ponde un script qui te permette de faire ça ou j'ai pas bien compris ? Parce que c'est tout à fait faisable. Mais dans ca cas, je conseille déjà de séparrer les différents champs par des tabulations, pas de données inutiles.
Voilà ce que je propose, après pour le script je vais pas m'y atteler tant que je sais pas si c'est ce que tu veux.
Citation :01/10 17:18 V Elvonia 378 2 645 0 0
01/10 17:27 D Meramwen 2479 0 0 0 -
01/10 17:35 V Bedoc 0 1 4 0 0
01/10 17:42 V Bedoc 0 0 3 0 0

Y a moyen de se faire un script sympa pour enregistrer tes données avec excel Wink


RE: inserer des données dans une bd - mloolm - 02-10-2006

re
j ai cree 1 formulaire pour envoyer
Code PHP :
<?php 
<form name="form1" method="post" action="historique.php">
<
textarea name="historique" id="historique"></textarea>
<
input type="submit" name="Submit" value="Envoyer">
</
form>

qui envoi sur
Code PHP :
<?php 
$historique
= $_POST['historique'];
echo
$historique ;
?>
ca me donne
Citation :01/10 à 17:18 V Elvonia 378 2 645 0 0 % 01/10 à 17:27 D Meramwen 2479 0 0 0 - 01/10 à 17:35 V Bedoc 0 1 4 0 0 % 01/10 à 17:42 V Bedoc 0 0 3 0 0 %

je voudrai donc que ces données soient inseré dans ma base mysql


RE: inserer des données dans une bd - OncleJames - 02-10-2006

Je comprend pas trop comment tu peux avoir toutes ces données dans l'array historique avec seulement un formulaire


RE: inserer des données dans une bd - pascal - 02-10-2006

à ta place je changerai le nom de deux champs: or et date. ce sont des mots clés en MySQL, si tu les laisses tel quel, tu seras ennuyé par la suite.


A+

Pascal


RE: inserer des données dans une bd - mloolm - 02-10-2006

en envoyant par le formulaire
01/10 à 17:18  V   Elvonia  378   2  645  0  0 %
01/10 à 17:27  D   Meramwen  2479   0  0  0  -
01/10 à 17:35  V   Bedoc  0   1  4  0  0 %
01/10 à 17:42  V   Bedoc  0   0  3  0  0 %

j ai aussi changé les 2 champs
Citation :CREATE TABLE `resulta` (
  `id` int(5) NOT NULL auto_increment,
  `jour` varchar(10) NOT NULL default '',
  `heure` varchar(10) NOT NULL default '',
  `resultat` char(2) NOT NULL default '',
  `victime` varchar(20) NOT NULL default '',
  `unite` varchar(10) NOT NULL default '',
  `bat` varchar(5) NOT NULL default '',
  `pepites
` varchar(5) NOT NULL default '',
  `terre` varchar(5) NOT NULL default '',
  KEY `id` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;


RE: inserer des données dans une bd - gtsoul - 03-10-2006

tu peux utiliser un outil d'administration, je te conseille mysql gui tools (pour mysql),
il est très intuitif


RE: inserer des données dans une bd - joshua - 03-10-2006

Moi je te conseille carrement de passer par du xml.
Avec php 5 tu fais ca les doigts dans le nez....
Un petit exemple:

(fichier config.xml: )
Code :
<commun>
     <admin>
         <etat>1</etat>    
     </admin>
     <database>
                <dbHost>192.168.0.188</dbHost>    
                <dbName>ma_db</dbName>        
                <dbUser>db_utilisateur</dbUser>        
                <dbPass>passwordzzz</dbPass>    
     </database>
</commun>

Ca c'était pour le fichier xml facile a ecrire en php
Maintenant pour le parsing:
Code PHP :
<?php

// acces a la configuration de base de donnée
$tree = new domDocument();
$tree->load('../config/config.xml');


$dbHost = $tree->getElementsByTagName('dbHost')->item(0)->nodeValue; // hostname of the MySQL server
$dbName = $tree->getElementsByTagName('dbName')->item(0)->nodeValue; // logical database name on that server
$dbUser = $tree->getElementsByTagName('dbUser')->item(0)->nodeValue; // database authorized user
$dbPass = $tree->getElementsByTagName('dbPass')->item(0)->nodeValue; // user's password

?>

tu vois facile de récupérer els éléments... apres pour les retravailler ou les envoyer en base c'est tout simple...


ton xml peut ressembler a ca:
Code :
<entree>
   <date>01/10</date>
   <heure>17:18</heure>
   <resultat>V</resultat>
   ...
</entree>



RE: inserer des données dans une bd - mloolm - 03-10-2006

re
je voudrai savoir comment arriver de
Citation :01/10 à 17:18  V   Elvonia  378   2  645  0  0 %
01/10 à 17:27  D   Meramwen  2479   0  0  0  -
01/10 à 17:35  V   Bedoc  0   1  4  0  0 %
01/10 à 17:42  V   Bedoc  0   0  3  0  0 %

ou
Citation :01/10 à 17:18 V Elvonia 378 2 645 0 0 % 01/10 à 17:27 D Meramwen 2479 0 0 0 - 01/10 à 17:35 V Bedoc 0 1 4 0 0 % 01/10 à 17:42 V Bedoc 0 0 3 0 0 %

a
Code PHP :
<?php 
<entree>
<
date>01/10</date>
<
heure>17:18</heure>
<
resultat>V</resultat>
...
</
entree>
c est peut etre 1 question bete mais j ai pas compris