flagada42
Messages postés15Date d'inscriptionlundi 31 décembre 2001StatutMembreDernière intervention23 juin 2003
-
18 juin 2003 à 08:50
charmed2
Messages postés4Date d'inscriptionmardi 28 mars 2006StatutMembreDernière intervention22 novembre 2006
-
28 mars 2006 à 00:33
function execute_fichier_sql($chemin)
{
// Ouverture du fichier contenant les requètes SQL
$file = fopen($chemin, "r");
//Tant que l'on est pas a la fin du fichier
while(!feof($file))
{
$sql = "" ;
$buffer = fgets($file, 2);
while($buffer != ";")
{
$sql = $sql.$buffer;
$buffer = fgets($file, 2);
}
$req = mysql_query($sql) or die("Erreur avec la requête $sql") ;
}
fclose($file);
}
Il y a une erreur car la boucle ne se termine pas ! il exécute bien les requêtes sql du fichier mais il ne ve pas s'arr^ter à la fin du fichier txt
Kenaghdar
Messages postés71Date d'inscriptionmardi 10 juin 2003StatutMembreDernière intervention27 juin 20032 18 juin 2003 à 09:21
Hello,
La fonction feof() a un comportement un peu bizarre dans la mesure où elle retourne TRUE si une erreur survient, ce qui est plutôt bizarre. Donc, il vaut mieux tester le pointeur $file avant de rentrer dans la boucle. Ainsi que tester les codes erreurs au sein de ta boucle.