par
Figuedi » 26 avr. 2021, 19:03
Fallait s'y attendre,
le fait de diviser le tableau comme tel n'est pas suffisant le serveur plante au bout de 4 minutes
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator at
[email protected] to inform them of the time this error occurred, and the actions you performed just before this error.
More information about this error may be available in the server error log.
il a quand meme rentré dans la base 195 000 valeurs et le fait de la relancer lui fait rajouter les memes lignes un seconde fois
il va donc ma falloir découper le script pour que l'utilisateur appuie une fois puis une autre et encore une autre en fonction du nombre d'erreurs
$db = new DataSource();
$conn = $db->getConnection();
$log = fopen('./UP/logfile.csv', 'rb');
//$log = fopen('./toto.txt', 'rb');
$i=1;
while(!feof($log)){
$TabLog[$i]=fgetcsv($log,0,';','"','\\');
$i++;
}
$TabLogs=array_chunk($TabLog,100000);
foreach ($TabLogs as $keys){
foreach ($keys as $val){
$date = "";
if (isset($val[0])) {
$date = mysqli_real_escape_string($conn, $val[0]);
}
$type = "";
if (isset($val[1])) {
$type = mysqli_real_escape_string($conn, $val[1]);
}
$valeur1 = "";
if (isset($val[2])) {
$valeur1 = mysqli_real_escape_string($conn, $val[2]);
}
$valeur2 = "";
if (isset($val[3])) {
$valeur2 = mysqli_real_escape_string($conn, $val[3]);
}
$sqlInsert = "INSERT into logs (date,type,valeur1,valeur2)
values (?,?,?,?)";
$paramType = "ssss";
$paramArray = array(
$date,
$type,
$valeur1,
$valeur2
);
$insertId = $db->insert($sqlInsert, $paramType, $paramArray);
if (! empty($insertId)) {
$type = "success";
$message = "CSV Data Imported into the Database";
} else {
$type = "error";
$message = "Problem in Importing CSV Data";
}
}
}
Fallait s'y attendre,
le fait de diviser le tableau comme tel n'est pas suffisant le serveur plante au bout de 4 minutes
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator at
[email protected] to inform them of the time this error occurred, and the actions you performed just before this error.
More information about this error may be available in the server error log.
il a quand meme rentré dans la base 195 000 valeurs et le fait de la relancer lui fait rajouter les memes lignes un seconde fois
il va donc ma falloir découper le script pour que l'utilisateur appuie une fois puis une autre et encore une autre en fonction du nombre d'erreurs #-o #-o #-o
[PHP]$db = new DataSource();
$conn = $db->getConnection();
$log = fopen('./UP/logfile.csv', 'rb');
//$log = fopen('./toto.txt', 'rb');
$i=1;
while(!feof($log)){
$TabLog[$i]=fgetcsv($log,0,';','"','\\');
$i++;
}
$TabLogs=array_chunk($TabLog,100000);
foreach ($TabLogs as $keys){
foreach ($keys as $val){
$date = "";
if (isset($val[0])) {
$date = mysqli_real_escape_string($conn, $val[0]);
}
$type = "";
if (isset($val[1])) {
$type = mysqli_real_escape_string($conn, $val[1]);
}
$valeur1 = "";
if (isset($val[2])) {
$valeur1 = mysqli_real_escape_string($conn, $val[2]);
}
$valeur2 = "";
if (isset($val[3])) {
$valeur2 = mysqli_real_escape_string($conn, $val[3]);
}
$sqlInsert = "INSERT into logs (date,type,valeur1,valeur2)
values (?,?,?,?)";
$paramType = "ssss";
$paramArray = array(
$date,
$type,
$valeur1,
$valeur2
);
$insertId = $db->insert($sqlInsert, $paramType, $paramArray);
if (! empty($insertId)) {
$type = "success";
$message = "CSV Data Imported into the Database";
} else {
$type = "error";
$message = "Problem in Importing CSV Data";
}
}
}[/PHP]