Fusionner le post d'une news et un upload en PHP
Résolu/Fermé
Coukies94
Messages postés
40
Date d'inscription
jeudi 3 septembre 2015
Statut
Membre
Dernière intervention
25 avril 2018
-
Modifié le 10 févr. 2018 à 23:06
Coukies94 Messages postés 40 Date d'inscription jeudi 3 septembre 2015 Statut Membre Dernière intervention 25 avril 2018 - 1 mars 2018 à 19:41
Coukies94 Messages postés 40 Date d'inscription jeudi 3 septembre 2015 Statut Membre Dernière intervention 25 avril 2018 - 1 mars 2018 à 19:41
A voir également:
- Fusionner le post d'une news et un upload en PHP
- Comment fusionner des pdf sans logiciel - Guide
- Easy php - Télécharger - Divers Web & Internet
- Fusionner plusieurs feuilles excel en une seule - Guide
- Youtube upload - Télécharger - Diffusion
- Post it windows - Télécharger - Agendas & Calendriers
2 réponses
yg_be
Messages postés
23430
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
17 janvier 2025
Ambassadeur
1 559
11 févr. 2018 à 11:58
11 févr. 2018 à 11:58
bonjour, je pense qu'une bonne partie du travail sera de modifier le javascript, pas le PHP.
es-tu d'accord de transférer le sujet vers le forum javascript?
es-tu d'accord de transférer le sujet vers le forum javascript?
jordane45
Messages postés
38389
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 janvier 2025
4 729
11 févr. 2018 à 15:02
11 févr. 2018 à 15:02
Bonjour,
Aucun rapport avec le JS visiblement....
La première chose à faire, donc, est de n'avoir qu'un seule formulaire.
Et donc... UNE SEULE balise FORM
Balise form qui devra disposer d'un ENCTYPE
Donc place le enctype dans ton premier FORM
Ensuite, prend le code qui se situe dans ton fichier
Et place le dans ton autre fichier PHP (celui qui te sert à gérer tes news)
Une fois que cela sera fait... il faudra peut-être ajuster un peu ton code....
Si tu ne trouves pas... reviens nous voir avec ton code modifié.
NB : Applique ceci dans la rédaction de tes codes :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
.
Aucun rapport avec le JS visiblement....
La première chose à faire, donc, est de n'avoir qu'un seule formulaire.
Et donc... UNE SEULE balise FORM
Balise form qui devra disposer d'un ENCTYPE
Donc place le enctype dans ton premier FORM
enctype="multipart/form-data">
Ensuite, prend le code qui se situe dans ton fichier
http://coukies.zapto.org:8005/FichiersUploader/upload.php
Et place le dans ton autre fichier PHP (celui qui te sert à gérer tes news)
Une fois que cela sera fait... il faudra peut-être ajuster un peu ton code....
Si tu ne trouves pas... reviens nous voir avec ton code modifié.
NB : Applique ceci dans la rédaction de tes codes :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
.
Coukies94
Messages postés
40
Date d'inscription
jeudi 3 septembre 2015
Statut
Membre
Dernière intervention
25 avril 2018
8
Modifié le 16 févr. 2018 à 16:17
Modifié le 16 févr. 2018 à 16:17
Bonjour Jordane,
J'avais essayé de rassembler le fichier mais l'upload etait toujours en echec, sauf quand je clique sur le bouton "envoyer le fichier" et non celui que je souhaites "envoyer"
=> voici le code de mon code modifié "post.php" qui génére ma news et maintenant mon upload egallement :
J'ai tenté de mettre ça dans le "post.php" mais j'obtiens un message "Cette page ne fonctionne pas" :
J'avais essayé de rassembler le fichier mais l'upload etait toujours en echec, sauf quand je clique sur le bouton "envoyer le fichier" et non celui que je souhaites "envoyer"
=> voici le code de mon code modifié "post.php" qui génére ma news et maintenant mon upload egallement :
<?php $dossier = 'upload/'; $fichier = basename($_FILES['avatar']['name']); $taille_maxi = 10000000; $taille = filesize($_FILES['avatar']['tmp_name']); $extension = strrchr($_FILES['avatar']['name'], '.'); //Début des vérifications de sécurité... if($taille>$taille_maxi) { $erreur = 'Le fichier est trop gros...'; } if(!isset($erreur)) //S'il n'y a pas d'erreur, on upload { //On formate le nom du fichier ici... $fichier = strtr($fichier, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy'); $fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier); if(move_uploaded_file($_FILES['avatar']['tmp_name'], $dossier . $fichier)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné... { echo 'le fichier à bien été envoyé au support informatique, merci !'; echo '<br />'; echo '<a href="http://coukies.zapto.org:8005">Retour</a>'; } else //Sinon (la fonction renvoie FALSE). { echo 'Echec de l\'upload !'; } } else { echo $erreur; } ?> <? touch("news.bdd"); // on cree le fichier si il existe pas if(ereg("^(.+)@(.+)\\.(.+)$", $_POST["mail_news"])) { $_POST["post_news"] = "<a href='mailto:".$_POST["mail_news"]."'>".$_POST["post_news"]."</a>"; } $_POST["mess_news"] = ereg_replace("\n", "<br>", $_POST["mess_news"]); $News = "<br>=====================================<br> <b>Créé par :</b> ".$_POST["post_news"]."<br>". "<b>Résumé :</b> ".$_POST["titre_news"]. "<br><b>Priorité :</b> ".$_POST["titre_prio"]. "<br><b>Date :</b> ".date("d-m-Y H:i:s"). "<br><b>Description :</b><br> ".$_POST["mess_news"] ; $Fichier = 'news.bdd' ; //on regarde si le fichier existe //on charge le contenue actuel $Fichier_r = fopen($Fichier,"r+"); $contenue = fread($Fichier_r , filesize($Fichier)); fclose($Fichier_r); //on ecrit la nouvelle news puis l'ancien contenue $Fichier_w = fopen($Fichier,"w+"); // on ouvre le fichier fwrite($Fichier_w,stripslashes($News. "<!-- *********** -->". $contenue)); // on ecrit dans le fichier; fclose($Fichier_w); // on referme le fichier; ?> Ticket créé pour voir les tickets actuellement ouverts <a href="voire.php">cliquez ici</a> <br> Sinon pour revenir sur le dashboard <a href="../index.php">cliquez ici</a>
J'ai tenté de mettre ça dans le "post.php" mais j'obtiens un message "Cette page ne fonctionne pas" :
enctype="multipart/form-data">
Coukies94
Messages postés
40
Date d'inscription
jeudi 3 septembre 2015
Statut
Membre
Dernière intervention
25 avril 2018
8
16 févr. 2018 à 16:20
16 févr. 2018 à 16:20
ok j'ai compris pardon je modifie mon formulaire et reviens ;D
Coukies94
Messages postés
40
Date d'inscription
jeudi 3 septembre 2015
Statut
Membre
Dernière intervention
25 avril 2018
8
16 févr. 2018 à 17:06
16 févr. 2018 à 17:06
Bon bah je dois avouer que je n'arrive pas à modifier correctement mon formupost.php en ne laissant qu'une balise "FORM" la communauté CCM pourrait m'aider à modifier mon formulaire ? =)
J'ai essayé grace à ton commentaire de suivre les infos ici :
mais meme avec ça je n'y arrive pas.
https://www.la-grange.net/w3c/html4.01/interact/forms.html
Voici mon code actuel :
J'ai essayé grace à ton commentaire de suivre les infos ici :
mais meme avec ça je n'y arrive pas.
https://www.la-grange.net/w3c/html4.01/interact/forms.html
Voici mon code actuel :
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>Créer un ticket</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <script language="javascript" type="text/javascript"> function ajoutbalise(balise) { if (balise == '<img src=\'URL\'>') {var url = prompt("URL de l'image :",""); balise = '<img src=\'' + url +'\'>' ; } else if ( balise == '<a href=\'URL\'>Lien</a>') {var url = prompt("URL du lien :","http://"); var lien = prompt("Nom du lien :",""); balise = '<a href=\'' + url +'\'>' + lien +'</a>'; } var txtarea = document.formulaire.mess_news; text = ' ' + balise + ''; if (txtarea.createTextRange && txtarea.caretPos) { var caretPos = txtarea.caretPos; caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? text + ' ' : text; txtarea.focus(); } else { txtarea.value += text; txtarea.focus(); } } </script> <div align="center"><u><h1>Créer un ticket :</h1></u></div> <form action="post.php" method="post" name="formulaire"> <br> <br> <div align="center"> <table width="454" border="0"> <div align="right"> <tr> <td width="448"><p align="center">Votre nom (ou nom du demandeur) : <br> <form action="/action_page.php" method="get"> <input list="browsers" name="post_news" type="text" required size="50"> <datalist id="browsers"> <option value="Billy 0836656565"> <option value="Julien 0836656565"> <option value="Philippe 0836656565"> <option value="Commercial1 0836656565"> <option value="Commercial2 0836656565"> </datalist> </form> <p align="center">Priorité (urgence du ticket) : <br> <SELECT name="titre_prio" size="1" type="option" required > <OPTION> <OPTION>3 (basse) <OPTION>2 (haute) <OPTION>1 (très haute) </SELECT> </p> <p align="center">Résumé du ticket : <br><input name="titre_news" type="text" required size="50"> </p> <br> </td> </tr> </div> </table> <table width="100" border="0" bordercolor="#FFFFFF"> <tr> <td><div align="center"> <p><img src="../img/IMG-URL-BR-B-I.jpg" width="149" height="26" border="0" usemap="#MapMap"> <img src="../img/Text_Color.jpg" width="64" height="66" border="0" usemap="#Map2"> <map name="MapMap"> <area shape="rect" coords="0,1,33,25" href="javascript:ajoutbalise('<img src=\'URL\'>')"> <area shape="rect" coords="32,1,73,25" href="javascript:ajoutbalise('<a href=\'URL\'>Lien</a>')"> <area shape="rect" coords="72,1,99,25" href="javascript:ajoutbalise('<BR> \n')"> <area shape="rect" coords="99,2,122,26" href="javascript:ajoutbalise('<b></b>')"> <area shape="rect" coords="122,1,149,25" href="javascript:ajoutbalise('<i></i>')"> </map> </p> </div></td> </tr> </table> <map name="Map"> <area shape="rect" coords="0,1,33,25" href="javascript:ajoutbalise('<img src=\'URL\'>')"> <area shape="rect" coords="32,1,73,25" href="javascript:ajoutbalise('<a href=\'URL\'>Lien</a>')"> <area shape="rect" coords="72,1,99,25" href="javascript:ajoutbalise('<BR> \n')"> <area shape="rect" coords="99,2,122,26" href="javascript:ajoutbalise('<b></b>')"> <area shape="rect" coords="122,1,149,25" href="javascript:ajoutbalise('<i></i>')"> </map> <p> <p><u>Description du ticket :</u></p> <textarea name="mess_news" cols="50" rows="10" required></textarea> </p> <p> <!-- transfert fichier --> <form method="POST" action="http://coukies.zapto.org:8005/FichiersUploader/upload.php" enctype="multipart/form-data"> <!-- On limite le fichier à 10000Ko --> <input type="hidden" value="10000000"> <input type="file" name="avatar"> <input type="submit" name="envoyer" value="Envoyer le fichier"> </form> <!-- fin transfert fichier --> <input type="submit" name="Submit" value="Envoyer"> </p> </div> </form> <map name="Map2"> <area shape="rect" coords="3,17,21,31" href="javascript:ajoutbalise('<font color=\'#FF0000\'></font>')"> <area shape="rect" coords="3,33,21,47" href="javascript:ajoutbalise('<font color=\'#1800FF\'></font>')"> <area shape="rect" coords="22,17,41,31" href="javascript:ajoutbalise('<font color=\'#FF9900\'></font>')"> <area shape="rect" coords="23,33,41,47" href="javascript:ajoutbalise('<font color=\'#FF00DE\'></font>')"> <area shape="rect" coords="3,49,21,63" href="javascript:ajoutbalise('<font color=\'#000000\'></font>')"> <area shape="rect" coords="23,49,41,63" href="javascript:ajoutbalise('<font color=\'#999999\'></font>')"> <area shape="rect" coords="42,17,61,31" href="javascript:ajoutbalise('<font color=\'#FFFF00\'></font>')"> <area shape="rect" coords="43,33,61,47" href="javascript:ajoutbalise('<font color=\'#00FF06\'></font>')"> <area shape="rect" coords="43,49,61,63" href="javascript:ajoutbalise('<font color=\'#FFFFFF\'></font>')"> </map> </body> </html>
jordane45
Messages postés
38389
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 janvier 2025
4 729
Modifié le 16 févr. 2018 à 19:21
Modifié le 16 févr. 2018 à 19:21
Dans le code que tu nous montres...
Il y a encore DEUX FORM
et
Ah NON ... rectification ... tu as TROIS FORM...
Il y a aussi celui la :
Qu'est-ce que tu n'as pas compris lorsque je t'ai indiqué de n'en mettre qu' UN SEUL ?
Ce n'est pourtant pas sorcier....
Pour être plus clair...
Tu prends TOUT le code HTML de ton formulaire (y compris la gestion des fichiers...) ( mais SANS LES BALISES FORM bien entendu... )
et tu le place entre la balise form
Et dans ton fichier "traitement.php" tu places TOUT le code PHP qui correspond au traitement de tes formulaires.
Il y a encore DEUX FORM
<form action="post.php" method="post" name="formulaire">
et
<form action="/action_page.php" method="get">
Ah NON ... rectification ... tu as TROIS FORM...
Il y a aussi celui la :
<form method="POST" action="http://coukies.zapto.org:8005/FichiersUploader/upload.php" enctype="multipart/form-data">
Qu'est-ce que tu n'as pas compris lorsque je t'ai indiqué de n'en mettre qu' UN SEUL ?
Ce n'est pourtant pas sorcier....
Pour être plus clair...
Tu prends TOUT le code HTML de ton formulaire (y compris la gestion des fichiers...) ( mais SANS LES BALISES FORM bien entendu... )
et tu le place entre la balise form
<form method="POST" action="traitement.php" enctype="multipart/form-data"> <!-- ICI TU PLACE TON CODE HTML DE TON FORMULAIRE ! --> <input type="submit" name="Submit" value="Envoyer"> </form>
Et dans ton fichier "traitement.php" tu places TOUT le code PHP qui correspond au traitement de tes formulaires.
Coukies94
Messages postés
40
Date d'inscription
jeudi 3 septembre 2015
Statut
Membre
Dernière intervention
25 avril 2018
8
1 mars 2018 à 19:41
1 mars 2018 à 19:41
Parfait ça a fonctionné ! merci pour ton aide ! !