Bonjour,

Souhaitant créer un module d'installation quasi automatisé, je me trouve bloqué lors de l'exécution d'un bout de code.

J'ai sans cesse l'erreur :
Instruction 0 : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '***

*** correspondant à la première ligne de mon fichier sql.

Je sais que mysql n'est censé gérer qu'une instruction à la fois, toutefois via le code ci-dessous, normalement, je devrais pouvoir exécuter toutes les créations/injections contenues dans le fichier sql ... non ?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
	include("../_connex.php"); //données de connexion.
	$filename = "../sql/servers.sql"; //fichier à importer
	$file = fopen($filename, "r"); //ouverture en mode lecture
	$sql = fread($file, filesize($filename)); //vérification de la taille du fichier
	fclose($file);	
	$inst = explode(";", $sql); 
	$n = count($inst); //nombre d'instructions à réaliser
		for($i=0;$i<$n;$i++){ // limitation de la boucle
			if(trim($inst[$i])!=""){
				echo "Instruction $i : ";
				mysql_query($inst[$i]) or die(mysql_error()); //execution des requetes présentes dans le fichier
				echo "OK.<br>";
			}
		}
	mysql_close(); //fermeture de la connexion
Je précise que le contenu du fichier sql est opérationnel lorsque j'emploie phpmyadmin pour faire un import.

Une idée ?