[RESOLU] Upload d'image qui ne fonctionne pas

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Upload d'image qui ne fonctionne pas

Re: Upload d'image qui ne fonctionne pas

par Spols » 24 août 2020, 11:33

il te faut remonter de ton message d'erreur trouver la condition qui n'est pas respecter, trouver pourquoi etc.
mais la sans aucune indentation de code difficile de t'aider.

Upload d'image qui ne fonctionne pas

par superNoob » 22 août 2020, 19:21

Hello, j'ai crée un formulaire pour uploader des images dans un répertoire, mais le script me plante à chaque fois sur
->setFlash('danger', "couln't move or download picture"); alors que j'aimerais créer le fichier...
Si quelqu'un pouvait m'aider ce serait super !
Je suis sûr que c'est la fonction create picture qui est incomplête , si quelqu'un a la solution svp !? Merci !

Voilà la fonction create_picture

Code : Tout sélectionner

function create_picture($db, $title, $width, $height, $tag, $filename, $price, $userid) { $high_quality_key = mt_rand(0, 10000000); $high_quality_key = base64_encode($high_quality_key); $db->query("INSERT INTO pictures SET title = ?, width = ?, height = ?, tag = ?, filename = ?, price = ?, high_quality = ?, created_on = NOW(), user_id = ?", [ $title, $width, $height, $tag, $filename, $price, $high_quality_key, $userid ]); $db->lastInsertId(); }
et voilà le fichier upload.php qui me renvoie au dernier else à chaque fois

Code : Tout sélectionner

else { $_POST['name'] = str_replace("..", "", $_POST['name']); $_POST['name'] = str_replace(" ", "", $_POST['name']); $_POST['name'] = str_replace("/", "", $_POST['name']); if (!file_exists("/upload/{$_POST['tag']}/")) { mkdir("/upload/{$_POST['tag']}", 0777, True); } $filename = "/upload/{$_POST['tag']}/{$_POST['name']}"; $relfilename = "{$_POST['tag']}/{$_POST['name']}"; if ($_POST['price'] < 0) { $_POST['price'] = abs($_POST['price']); } if (file_exists($filename)) { $new_name = tempnam("/upload", $filename); if ($url) { file_put_contents($new_name, file_get_contents($url)); } else { move_uploaded_file($_FILES['pic']['tmp_name'], $new_name); } $id = Pictures::add_conflict($filename, $new_name, $_POST['tag'], $_POST['title'], $_POST['price'], $user['id']); App::redirect(Pictures::$CONFLICT_URL . "?conflictid={$id}"); } else { if ($url) { file_put_contents($filename, file_get_contents($url)); } else { move_uploaded_file($_FILES['pic']['tmp_name'], $filename); } if (file_exists($filename)) { if ($id = Pictures::create_picture($db, $_POST['title'], 128, 128, $_POST['tag'], $relfilename, $_POST['price'], $user['id'])) { Pictures::batch_resize($filename); App::redirect(Pictures::$VIEW_PIC_URL . "?picid={$id}"); $file_uploaded = True; } else { Session::getInstance()->setFlash('danger', "Couldn't create your picture, something wrong with the database"); } } else { Session::getInstance()->setFlash('danger', "Couldn't move or download picture"); } } } } ?>