/ / PHP csv uploader dans mysql - php, mysql, csv, permissions

PHP csv uploader dans mysql - php, mysql, csv, permissions

J'essaye de télécharger un fichier csv dans ma base de données mysql à partir de code php. Je reçois une erreur: "Impossible de mettre à jour: la commande utilisée n'est pas autorisée avec cette version de MySQL"

C'est le code que j'utilise. Dois-je donner des autorisations pour pouvoir le faire à partir de formulaires php? Comme je suis capable de charger ce même fichier csv de mysql directement depuis le terminal.

P.S.:- J'ai changé le fichier my.cnf après avoir lu ce post. MySQL: Activer LOFT DATA LOCAL INFILE

Cependant, je ne parviens pas à télécharger depuis phpmyadmin et depuis les formulaires php. Le message d'erreur est identique. c'est à dire. "Impossible de mettre à jour: la commande utilisée n'est pas autorisée avec cette version de MySQL"

Ci-dessous, le morceau de code.

if(@$_POST["submit"])
{
$file = $_FILES["file"];
$name = $file["name"];
$type = $file["type"];
$size = $file["size"];
$tmppath = $file["tmp_name"];
echo "Name of the file is $name <br> $tmppath";
if($name!="")
{
echo "<br> Trying to upload file <br>";
if(move_uploaded_file($tmppath, "csvfiles/.$name")) //project is a folder in which you will save csv files
{
$query="LOAD DATA LOCAL INFILE "$tmppath" INTO TABLE test.metadata FIELDS TERMINATED BY ";" LINES TERMINATED BY "n" IGNORE 1 LINES;";
mysql_query ($query) or die ("Could not updated:".mysql_error());
echo "CSV file inserted successfully !!<br>";
}else {echo "<br>Failed !!!!";}
}else {echo "<br>No file exist <br>";}
}else {echo " <br> No file exist <br>";}

Réponses:

0 pour la réponse № 1

Si LOAD DATA LOCAL est désactivé, que ce soit sur le serveur ou sur le client, un client qui tente d'émettre une telle instruction reçoit le message d'erreur suivant:

ERROR 1148: The used command is not allowed with this MySQL version

Essayez de courir ci-dessous dans si UNIX

mysql_fix_privilege_tables --password=root_password

ou si fenêtres

C:> cd "C:Program FilesMySQLMySQL Server 5.0"
C:> binmysql -u root -p mysql
mysql> SOURCE share/mysql_fix_privilege_tables.sql