Erreur de lecture fichier SQL [résolu] - PHP - Programmation
MarshPosté le 26-04-2005 à 11:45:23
Mon problème est le suivant. Je fais un archivage de ma base de données en la stockant dans un fichier : base.sql. Donc mon fichier contient toutes les instructions sql pour reeconstruire ma base. Voici un exemple de ce que le fichier contient :
Code :
INSERT INTO `login` VALUES(13,'test','test',1,0,'','truc@machin.fr');
CREATE TABLE `couple` (
`NumCouple` int(11) NOT NULL auto_increment,
`NumEnseignant` int(11) NOT NULL default '0',
`NumEtudiant` int(11) NOT NULL default '0',
PRIMARY KEY (`NumCouple`)
) TYPE=MyISAM COMMENT='Représente les couples Etudiant/Enseignant des stages' AUTO_INCREMENT=120 ;
INSERT INTO `couple` VALUES (68, 15, 0);
INSERT INTO `couple` VALUES (3, 0, 20202683);
INSERT INTO `couple` VALUES (4, 0, 20201194);
INSERT INTO `couple` VALUES (5, 0, 20200279);
INSERT INTO `couple` VALUES (7, 0, 20101964);
INSERT INTO `couple` VALUES (9, 0, 0);
INSERT INTO `couple` VALUES (13, 0, 20202683);
INSERT INTO `couple` VALUES (119, 1, 2000000);
INSERT INTO `couple` VALUES (18, 0, 20201194);
INSERT INTO `couple` VALUES (60, 0, 2040447);
INSERT INTO `couple` VALUES (21, 0, 20102067);
INSERT INTO `couple` VALUES (23, 0, 20201697);
INSERT INTO `couple` VALUES (48, 0, 20200279);
Ensuite j'utilise fread,explode et tout ce qui va avec en php pour séparer ligne par ligne les instructions et créer mes requêtes dans mon script php. Or jusqu'au découpage ligne par ligne inclu tout se passe bien. Mais quand je lui demande d'exécuter mysql_query($sql_line) (sachant que $sql_line contient une des ligne du code ci-dessus) ca plante. Je me suis dit que ca venait de ce que contient $sql_line et quand j'affiche le contenu de $sql_line tout se passe bien sauf que partout où il y a des ' il rajoute des \ devant.
Je veux donc savoir si le fait qu'il n'exécute pas les requêtes peut venir du fait qu'il rajoute des \ devant mes apostrophes.
Ca parait un peu compliqué alors hésiter pas a poser des questions si vous comprenez pas bien.
Marsh Posté le 26-04-2005 à 11:45:23
Mon problème est le suivant. Je fais un archivage de ma base de données en la stockant dans un fichier : base.sql. Donc mon fichier contient toutes les instructions sql pour reeconstruire ma base. Voici un exemple de ce que le fichier contient :
Ensuite j'utilise fread,explode et tout ce qui va avec en php pour séparer ligne par ligne les instructions et créer mes requêtes dans mon script php. Or jusqu'au découpage ligne par ligne inclu tout se passe bien. Mais quand je lui demande d'exécuter mysql_query($sql_line) (sachant que $sql_line contient une des ligne du code ci-dessus) ca plante. Je me suis dit que ca venait de ce que contient $sql_line et quand j'affiche le contenu de $sql_line tout se passe bien sauf que partout où il y a des ' il rajoute des \ devant.
Je veux donc savoir si le fait qu'il n'exécute pas les requêtes peut venir du fait qu'il rajoute des \ devant mes apostrophes.
Ca parait un peu compliqué alors hésiter pas a poser des questions si vous comprenez pas bien.
Merci d'avance pour votre aide.
Hed
Message édité par pops1 le 26-04-2005 à 13:29:42