Envoyer fichier en GET
Fermé
powpowland
Messages postés
396
Date d'inscription
lundi 3 mars 2008
Statut
Membre
Dernière intervention
2 mars 2022
-
5 mai 2009 à 17:56
powpowland Messages postés 396 Date d'inscription lundi 3 mars 2008 Statut Membre Dernière intervention 2 mars 2022 - 6 mai 2009 à 17:33
powpowland Messages postés 396 Date d'inscription lundi 3 mars 2008 Statut Membre Dernière intervention 2 mars 2022 - 6 mai 2009 à 17:33
A voir également:
- Envoyer fichier en GET
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Ouvrir fichier .bin - Guide
- Fichier host - Guide
5 réponses
hack_net
Messages postés
783
Date d'inscription
lundi 5 mars 2007
Statut
Membre
Dernière intervention
5 juin 2014
51
5 mai 2009 à 18:13
5 mai 2009 à 18:13
Bonjour,
Euh... Oui, je ne vois pas pourquoi sa serait impossible. Tu n'as jamais vu des adresses d'upload genre "https://www.lesite.com/?action=upload&fichier=DJFG5245&id=325952" ???
Un bon exemple sur media-convert ;)
A+
Euh... Oui, je ne vois pas pourquoi sa serait impossible. Tu n'as jamais vu des adresses d'upload genre "https://www.lesite.com/?action=upload&fichier=DJFG5245&id=325952" ???
Un bon exemple sur media-convert ;)
A+
powpowland
Messages postés
396
Date d'inscription
lundi 3 mars 2008
Statut
Membre
Dernière intervention
2 mars 2022
20
5 mai 2009 à 18:15
5 mai 2009 à 18:15
mais alors on fait comment parce que je n'y arrive pas du tout...
hack_net
Messages postés
783
Date d'inscription
lundi 5 mars 2007
Statut
Membre
Dernière intervention
5 juin 2014
51
5 mai 2009 à 18:25
5 mai 2009 à 18:25
Et bien tout dépend ton script d'upload...
powpowland
Messages postés
396
Date d'inscription
lundi 3 mars 2008
Statut
Membre
Dernière intervention
2 mars 2022
20
6 mai 2009 à 10:32
6 mai 2009 à 10:32
bon vu que je galère vraiment... voici mon code :
en gros, il bloque quand je met ça "$_FILES['affiche']['name']" , il dit que "affiche" n'existe pas... et donc, il saute ça : "if(move_uploaded_file($affiche, $dossier2 . $affiche))" que j'ai essayé de tourner de toutes les manières possible...
j'en ai fait un en POST pour un autre site, mais pas moyen en GET, mais si ça marche pas je vais me démerder pour le faire en POST, ce qui ne sera pas dur du tout... mais je voulais y arriver en GET...
<?php define( 'MAIL_FROM',"Obligatoire"); define( 'MAIL_EVENEMENT',"Obligatoire"); define( 'MAIL_DATE',"Obligatoire"); define( 'MAIL_LIEU',"Obligatoire"); define( 'MAIL_DESC',"Obligatoire et faites une description la plus complète possible, avec une adresse, un n° de tel pour les renseignements et un petit texte sympa pour donner envie. C'est ce texte qui sera mis en description de l'évènement."); $mailto = "mail@test.fr"; $mailfrom = MAIL_FROM; $evenement = MAIL_EVENEMENT; $date = MAIL_DATE; $lieu = MAIL_LIEU; $desc = MAIL_DESC; $mailsent = false; $errors = array(); if (isset($_GET["evenement"])) { $mailfrom = $_GET["mailfrom"]; $evenement = $_GET["evenement"]; $date = $_GET["date"]; $lieu = $_GET["lieu"]; $desc = $_GET["desc"]; $affiche = $_GET["affiche"]; if($mailfrom === NULL || $mailfrom === MAIL_FROM){ $errors[] = 'Vous devez renseigner votre adresse email.'; } $atom = '[-a-z0-9!#$%&\'*+\\/=?^_`{|}~]'; $domain = '([a-z0-9]([-a-z0-9]*[a-z0-9]+)?)'; $regex = '/^' . $atom . '+' . '(\.' . $atom . '+)*' . '@' . '(' . $domain . '{1,63}\.)+' . $domain . '{2,63}$/i'; if (!preg_match($regex, $mailfrom)) { $errors[] = "L'adresse e-mail n'est pas valide"; } if($evenement === NULL || $evenement === MAIL_EVENEMENT){ $errors[]='Vous devez renseigner le nom de l\'évènement'; } if ($date === NULL || $date === MAIL_DATE){ $errors[]='Vous devez renseigner la date'; } if ($lieu === NULL || $lieu === MAIL_LIEU){ $errors[]='Vous devez renseigner le lieu'; } if ($desc === NULL || $desc === MAIL_DESC){ $errors[]='Vous devez renseigner une description'; } //----------------------------------AFFICHE------------------------------ $dossier = '/affiches'; $dossier2 = '/affiches/'; $fichier = $_FILES['affiche']['name']; echo $fichier; $extensions = array('.png', '.gif', '.jpg', '.jpeg', '.JPG','.PNG','.GIF','.JPEG'); $extension = strrchr($affiche, '.'); list($nomphoto, $extensionphoto) = explode(".", $affiche); if(!in_array($extension, $extensions)) //Si l'extension n'est pas dans le tableau { $errors[] = 'Extension de l\'affiche refusée'; } if ($affiche != "none") { $affiche = strtr($affiche, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy'); $affiche = preg_replace('/([^.a-z0-9]+)/i', '-', $affiche); If(file_exists("$dossier/$affiche")) { $errors[]='Le fichier que vous voulez transférer existe déjà dans notre répertoire.'; } } if (count($errors) === 0){ echo $affiche; if(move_uploaded_file($affiche, $dossier2 . $affiche)){ $file = $dossier2.$affiche; $source = imagecreatefromjpeg($file); $x = imagesx($source); $y = imagesy($source); $ymax = 355; $ratmax = $y / $ymax; $xmax = $x/$ratmax; $sourcemax = imagecreatefromjpeg($file); $destinationmax = imagecreatetruecolor($xmax, $ymax); $largeur_sourcemax = imagesx($sourcemax); $hauteur_sourcemax = imagesy($sourcemax); $largeur_destinationmax = imagesx($destinationmax); $hauteur_destinationmax = imagesy($destinationmax); imagecopyresampled($destinationmax, $sourcemax, 0, 0, 0, 0, $largeur_destinationmax, $hauteur_destinationmax, $largeur_sourcemax, $hauteur_sourcemax); imagejpeg($destinationmax, $dossier2.$fichier); echo "<img src='".$dossier2.$fichier."' alt='Apercu' />"; } else{ $errors[]='L\'affiche dépasse les 2Mo limités.'; } } //--------------------------------FIN AFFICHE---------------------------- if (count($errors) === 0) {echo " <div id='verif'> Adresse mail : ".$mailfrom."<br> Nom de l'évènement : ".$evenement."<br> Date de l'évènement : ".$date."<br> Lieu de l'évènement : ".$lieu."<br> Description de l'évènement : ".$desc."<br> Affiche de l'évènement : ".$affiche."<br> </div>";} else{foreach ($errors as $error ){echo $error."<br>";}} } echo '<div id="formulaire"> <form id="contact" method="GET"> <table> <tr><td align="right"><label>Adresse email :</label></td> <td><input type="text" name="mailfrom" value="'.$mailfrom.'"></td></tr> <tr><td align="right"><label>Nom de l\'évènement :</label></td> <td><input type="text" name="evenement" value="'.$evenement.'"></td></tr> <tr><td align="right"><label>Date de l\'évènement :</label></td> <td><input type="text" name="date" value="'.$date.'"></td></tr> <tr><td align="right"><label>Lieu de l\'évènement :</label></td> <td><input type="text" name="lieu" value="'.$lieu.'"></td></tr> <tr><td valign="top" align="right"><label>Description de l\'évènement :</label></td> <td><textarea name="desc" cols="50" rows="10">'.$desc.'</textarea></td></tr> <tr><td align="right"><label>Affiche de l\'évènement :</label></td> <td><input type="file" name="affiche"></td></tr> <tr><td><input type="reset" name="reset" value="Effacer"></td> <td><input type="submit" name="submit" value="Proposer l\'évènement"</td></tr> </table> </form> </div>'; ?>
en gros, il bloque quand je met ça "$_FILES['affiche']['name']" , il dit que "affiche" n'existe pas... et donc, il saute ça : "if(move_uploaded_file($affiche, $dossier2 . $affiche))" que j'ai essayé de tourner de toutes les manières possible...
j'en ai fait un en POST pour un autre site, mais pas moyen en GET, mais si ça marche pas je vais me démerder pour le faire en POST, ce qui ne sera pas dur du tout... mais je voulais y arriver en GET...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
powpowland
Messages postés
396
Date d'inscription
lundi 3 mars 2008
Statut
Membre
Dernière intervention
2 mars 2022
20
6 mai 2009 à 17:33
6 mai 2009 à 17:33
bon j'ai abandonné le GET et je suis passé au POST...
Mon problème est que il bloque sur "if(move_uploaded_file($_FILES['avatar']['name'],$dossier2.$affiche))"...
voici le code entier si quelqu'un peut m'aider...
code contact.php
code upload.php
et si quelqu'un sait comment faire en GET, je suis preneur aussi... merci
Mon problème est que il bloque sur "if(move_uploaded_file($_FILES['avatar']['name'],$dossier2.$affiche))"...
voici le code entier si quelqu'un peut m'aider...
code contact.php
<?php define( 'MAIL_FROM',"Obligatoire"); define( 'MAIL_EVENEMENT',"Obligatoire"); define( 'MAIL_DATE',"Obligatoire"); define( 'MAIL_LIEU',"Obligatoire"); define( 'MAIL_DESC',"Obligatoire et faites une description la plus complète possible, avec une adresse, un n° de tel pour les renseignements et un petit texte sympa pour donner envie. C'est ce texte qui sera mis en description de l'évènement."); $mailto = "mail@my-contest.fr"; $mailfrom = MAIL_FROM; $evenement = MAIL_EVENEMENT; $date = MAIL_DATE; $lieu = MAIL_LIEU; $desc = MAIL_DESC; echo '<div id="formulaire"> <form id="contact" method="POST" action="upload.php" enctype="multipart/form-data"> <table> <tr><td align="right"><label>Adresse email :</label></td> <td><input type="text" name="mailfrom" value="'.$mailfrom.'"></td></tr> <tr><td align="right"><label>Nom de l\'évènement :</label></td> <td><input type="text" name="evenement" value="'.$evenement.'"></td></tr> <tr><td align="right"><label>Date de l\'évènement :</label></td> <td><input type="text" name="date" value="'.$date.'"></td></tr> <tr><td align="right"><label>Lieu de l\'évènement :</label></td> <td><input type="text" name="lieu" value="'.$lieu.'"></td></tr> <tr><td valign="top" align="right"><label>Description de l\'évènement :</label></td> <td><textarea name="desc" cols="50" rows="10">'.$desc.'</textarea></td></tr> <tr><td valign="top" align="right"><label>Vidéo éditions précédentes (liens Zapiks, Youtube, DailyMotion...) :</label></td> <td><input type="text" name="video" value="Pas de Vidéo"></td></tr> <tr><td align="right"><label>Affiche de l\'évènement :</label></td> <td><input type="file" name="avatar"></td></tr> <tr><td><input type="reset" name="reset" value="Effacer"></td> <td><input type="submit" name="submit" value="Proposer l\'évènement"</td></tr> </table> </form> </div>'; ?>
code upload.php
<?php define( 'MAIL_FROM',"Obligatoire"); define( 'MAIL_EVENEMENT',"Obligatoire"); define( 'MAIL_DATE',"Obligatoire"); define( 'MAIL_LIEU',"Obligatoire"); define( 'MAIL_DESC',"Obligatoire et faites une description la plus complète possible, avec une adresse, un n° de tel pour les renseignements et un petit texte sympa pour donner envie. C'est ce texte qui sera mis en description de l'évènement."); $mailto = "mail@my-contest.fr"; $mailfrom = MAIL_FROM; $evenement = MAIL_EVENEMENT; $date = MAIL_DATE; $lieu = MAIL_LIEU; $desc = MAIL_DESC; $mailsent = false; $errors = array(); if (isset($_POST["evenement"])) { $mailfrom = $_POST["mailfrom"]; $evenement = $_POST["evenement"]; $date = $_POST["date"]; $lieu = $_POST["lieu"]; $desc = $_POST["desc"]; $video = $_POST["video"]; $affiche = basename($_FILES['avatar']['name']); if($mailfrom === NULL || $mailfrom === MAIL_FROM){ $errors[] = 'Vous devez renseigner votre adresse email.'; } $atom = '[-a-z0-9!#$%&\'*+\\/=?^_`{|}~]'; $domain = '([a-z0-9]([-a-z0-9]*[a-z0-9]+)?)'; $regex = '/^' . $atom . '+' . '(\.' . $atom . '+)*' . '@' . '(' . $domain . '{1,63}\.)+' . $domain . '{2,63}$/i'; if (!preg_match($regex, $mailfrom)) { $errors[] = "L'adresse e-mail n'est pas valide"; } if($evenement === NULL || $evenement === MAIL_EVENEMENT){ $errors[]='Vous devez renseigner le nom de l\'évènement'; } if ($date === NULL || $date === MAIL_DATE){ $errors[]='Vous devez renseigner la date'; } if ($lieu === NULL || $lieu === MAIL_LIEU){ $errors[]='Vous devez renseigner le lieu'; } if ($desc === NULL || $desc === MAIL_DESC){ $errors[]='Vous devez renseigner une description'; } //----------------------------------AFFICHE------------------------------ $dossier = 'affiches'; $dossier2 = 'affiches/'; $extensions = array('.png', '.gif', '.jpg', '.jpeg', '.JPG','.PNG','.GIF','.JPEG'); $extension = strrchr($affiche, '.'); list($nomphoto, $extensionphoto) = explode(".", $affiche); if(!in_array($extension, $extensions)) //Si l'extension n'est pas dans le tableau { $errors[] = 'Extension de l\'affiche refusée'; } if ($affiche != "none") { $affiche = strtr($affiche, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy'); $affiche = preg_replace('/([^.a-z0-9]+)/i', '-', $affiche); If(file_exists("$dossier/$affiche")) { $errors[]='Le fichier que vous voulez transférer existe déjà dans notre répertoire.'; } } if (count($errors) === 0){ if(move_uploaded_file($_FILES['avatar']['name'],$dossier2.$affiche)){ $file = $dossier2.$affiche; $source = imagecreatefromjpeg($file); $x = imagesx($source); $y = imagesy($source); $ymax = 355; $ratmax = $y / $ymax; $xmax = $x/$ratmax; $sourcemax = imagecreatefromjpeg($file); $destinationmax = imagecreatetruecolor($xmax, $ymax); $largeur_sourcemax = imagesx($sourcemax); $hauteur_sourcemax = imagesy($sourcemax); $largeur_destinationmax = imagesx($destinationmax); $hauteur_destinationmax = imagesy($destinationmax); imagecopyresampled($destinationmax, $sourcemax, 0, 0, 0, 0, $largeur_destinationmax, $hauteur_destinationmax, $largeur_sourcemax, $hauteur_sourcemax); imagejpeg($destinationmax, $dossier2.$fichier); echo "<img src='".$dossier2.$fichier."' alt='Apercu' />"; } else{ $errors[]='L\'affiche dépasse les 2Mo limités.'; } } //--------------------------------FIN AFFICHE---------------------------- if (count($errors) === 0) {echo " <div id='verif'> Adresse mail : ".$mailfrom."<br> Nom de l'évènement : ".$evenement."<br> Date de l'évènement : ".$date."<br> Lieu de l'évènement : ".$lieu."<br> Description de l'évènement : ".$desc."<br> Affiche de l'évènement : ".$affiche."<br> </div>";} else{foreach ($errors as $error ){echo $error."<br>";}} } ?>
et si quelqu'un sait comment faire en GET, je suis preneur aussi... merci