Bonjour, j'ai un petit soucis.
Je viens de pratiquement terminer mon site, et maintenant j'aurais besoin de le remplir. Le soucis est que quand je me trouve sur la page d'ajout d'articles, et bien après avoir rentré et validé 8 articles, le programme refuse de s'exécuter pour l'insertion du 9ème article. Est ce que celà pourrait être une erreur de ma part ou bien simplement que je suis limité à un certain nombre d'insertions par jour auprès de mon hébergeur ?
Je vous laisse quand même le script d'insertion au cas où :
if( isset($_POST'i_name']) && isset($_POST'i_slug']) )
{
check_csrf();
if( preg_match('/^[a-z\-0-9]+$/', $_POST'i_slug']) )
{
$i_id = $db->quote($_GET'id']);
foreach($_POST as $key => $value)
{
${$key} = $db->quote($value);
}
// On sauvegarde l'article dans la base de donnée
if( isset($_GET'id']) )
{
$id = $db->quote($_GET'id']);
// On vérifie que la catégorie n'a pas changé
$select = $db->query("SELECT i_cat_id FROM " . PREFIX . "items WHERE i_id=$id");
$item = $select->fetch();
$item_old_id = $db->quote($item'i_cat_id']);
// Si la catégorie est différente, on met à jour
if( $item_old_id != $i_cat_id )
{
// On enlève un item dans l'ancienne catégorie
$db->query("UPDATE " . PREFIX . "cats SET c_count = c_count - 1 WHERE c_id=$item_old_id");
// On rajoute un item dans la nouvelle
$db->query("UPDATE " . PREFIX . "cats SET c_count = c_count + 1 WHERE c_id=$i_cat_id");
}
// Enfin on met à jour le produit
$time = $db->quote(time());
$db->query("UPDATE " . PREFIX . "items
SET i_name=$i_name, i_price=$i_price, i_slug=$i_slug, i_content=$i_content, i_time=$time, i_reference=$i_reference, i_height=$i_height, i_width=$i_width, i_depth=$i_depth, i_diameter=$i_diameter, i_statut=$i_statut, i_cat_id=$i_cat_id
WHERE i_id=$i_id");
setFlash('Le produit a bien été modifiée');
}
else
{
$time = $db->quote(time());
$db->query("INSERT INTO " . PREFIX . "items
SET i_name=$i_name, i_price=$i_price, i_slug=$i_slug, i_content=$i_content, i_time=$time, i_reference=$i_reference, i_height=$i_height, i_width=$i_width, i_depth=$i_depth, i_diameter=$i_diameter, i_statut=$i_statut, i_cat_id=$i_cat_id");
setFlash('Le produit a bien été ajoutée');
$_GET'id'] = $db->lastInsertId();
// On met à jour le nombre d'articles par rapport à la catégorie
$db->query("UPDATE " . PREFIX . "cats SET c_count = c_count + 1 WHERE c_id=$i_cat_id");
}
// Envoi des images
$work_id = $db->quote($_GET'id']);
$files = $_FILES'images'];
$images = array();
// On récupère la librairie
// require($racine . 'libs/image.php');
foreach($files'tmp_name'] as $k => $v)
{
$image = array(
'name' => $files'name']$k],
'tmp_name' => $files'tmp_name']$k],
);
$extension = pathinfo($image'name'], PATHINFO_EXTENSION);
if( in_array($extension, array('jpg', 'png')) )
{
// On transfère l'id associée dans la base de donnée
$db->query("INSERT INTO " . PREFIX . "images SET img_work_id=$work_id");
// On récupère l'id transférée pour avoir l'id de l'image
$image_id = $db->lastInsertId();
$image_name = $image_id . '.' . $extension;
// On transfère l'image dans le bon dossier
move_uploaded_file($image'tmp_name'], IMAGES . 'works' . DS . $image_name);
// resizeImage(WEBROOT . 'img/works/' . $image_name, 150,150);
// On met enfin à jour la base de donnée
$image_name = $db->quote($image_name);
$db->query("UPDATE " . PREFIX . "images SET img_name=$image_name WHERE img_id=$image_id");
// On définit la première image comme image principale
for($i = 0; $i <= 1; $i++)
{
$db->query("UPDATE " . PREFIX . "items SET i_image=$image_id WHERE i_id=$work_id");
}
}
}
header('Location:work.php');
die();
}
else
{
setFlash('Le slug n\'est pas valide !', 'danger');
}
}