Problème avec ma page de upload
AlexC97
Messages postés
16
Date d'inscription
Statut
Membre
Dernière intervention
-
AlexC97 Messages postés 16 Date d'inscription Statut Membre Dernière intervention -
AlexC97 Messages postés 16 Date d'inscription Statut Membre Dernière intervention -
L'ajout d'un fichier mp3 à ma page de upload semble bloquer la création de toutes les variables. Je vous prie de bien vouloir me donner un coup de main.
A voir également:
- Problème avec ma page de upload
- Impossible de supprimer une page word - Guide
- Youtube upload - Télécharger - Diffusion
- Faire de google ma page d'accueil - Guide
- Numéro de page word - Guide
- Imprimer tableau excel sur une page - Guide
10 réponses
Voici le code source:
<?php $annee = date('Y'); $mois = date('m'); $jour = date('d'); $heure = date('H'); $minute = date('i'); $seconde = date('s'); $Date = "$jour/$mois/$annee - $heure h $minute min $seconde s"; if (empty($_FILES['imagemax']) Or empty($_FILES['audio']) Or empty($_POST['artist']) Or empty($_POST['titre']) Or empty($_POST['lyric']) Or empty($_POST['combienfont43']) Or empty($_POST['type']) Or empty($_POST['g_p'])) { echo "<strong>Un ou plusieurs champs sont vides.</strong>"; } else { //Enregistrement des fichiers $extensions_validesIM = array( 'jpg' , 'jpeg' , 'gif' , 'png' ); $extension_uploadIMX = strtolower( substr( strrchr($_FILES['imagemax']['name'], '.') ,1) ); if ( in_array($extension_uploadIMX,$extensions_validesIM) ) { //Créer un identifiant. Nom sans extension $Iartist =$_POST['artist']; $Ititre =$_POST['titre']; $nom = "$Iartist $Ititre"; $cheminImax = "../imax/$nom.$extension_uploadIMX"; $resultat = move_uploaded_file($_FILES['imagemax']['tmp_name'],$cheminImax); $resultat; $extensions_validesAU = array( 'mp3'); $extension_uploadAU = strtolower( substr( strrchr($_FILES['audio']['name'], '.') ,1) ); if ( in_array($extension_uploadAU,$extensions_validesAU) ) { $cheminAu = "../audio/$nom.$extension_uploadAU"; $resultat = move_uploaded_file($_FILES['audio']['tmp_name'],$cheminAu); $resultat; } Else {echo "Seuls les fichiers de type mp3 sont autorisés.";} } Else {echo "Seuls les fichiers de type 'jpg' , 'jpeg' , 'gif' ou 'png' sont autorisés.";} } ?>
<form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post" enctype="multipart/form-data"> <fieldset> <legend><strong>Formulaire d'ajout</strong></legend> <input type="radio" name="type" value="Clip"> <label for="type">Clip</label> <input type="radio" name="type" value="Instrumental"> <label for="type">Instrumental</label><br><br> <input type="radio" name="g_p" value="Gratuit"> <label for="g_p">Gratuit</label> <input type="radio" name="g_p" value="Payant"> <label for="g_p">Payant</label><br><br> <label for="audio">Audio</label><br /> <input type="file" name="audio" /><br /><br /> <label for="imagemax">Image Grand F</label><br /> <input type="file" name="imagemax" /><br /><br /> <label for="artist">Artist</label><br> <input type="text" name="artist" maxlength="50"><br><br> <label for="titre">Titre</label><br> <input type="text" name="titre" maxlength="50"><br><br> <label for="lyric">Lyric</label><br> <textarea tabindex="30" rows="5" cols="30" name="lyric"></textarea><br><br> <label for="combienfont43">Combien font 4+3 ?</label><br> <input type="text" name="combienfont43" maxlength="50"><br><br> <input type="submit" value="Ajouter"><br> </fieldset>
Bonjour,
Essaye ça :
côté HTML :
remplace
par :
NB : (vu les symptômes que tu décris ....) Attention également à la taille limite des fichiers autorisés par le serveur. C'est un réglage à faire dans le php.ini
les variables à regarder/modifier sont :
et/ou dans le .htaccess :
Au passage : https://www.php-fig.org/psr/psr-2/#if-elseif-else
Essaye ça :
côté HTML :
remplace
<form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post" enctype="multipart/form-data">
par :
<form action="" method="post" enctype="multipart/form-data">
<?php $heure = date('H'); $minute = date('i'); $seconde = date('s'); $Date = date("d/m/Y") . "- $heure h $minute min $seconde s"; // le temps des tests : echo "<br><u>$Date</u><br>"; echo "<br><b>Variables POST :</b><br><pre>"; print_r($_POST); echo "</pre>"; echo "<br><b>Variables FILES :</b><br><pre>"; print_r($_FILES); echo "</pre>"; //----------------------------------------------------------------------- // RECUPERATION PROPRE DES VARIABLES AVANT DE LES UTILISER //----------------------------------------------------------------------- $FILE = !empty($_FILES) ? $_FILES : NULL; $imagemax = !empty($FILE['imagemax']) ? $FILE['imagemax'] : NULL; $audio = !empty($FILE['audio']) ? $FILE['audio'] : NULL; $artist = !empty($_POST['artist']) ? $_POST['artist'] : NULL; $titre = !empty($_POST['titre']) ? $_POST['titre'] : NULL; $lyric = !empty($_POST['lyric']) ? $_POST['lyric'] : NULL; $combienfont43 = !empty($_POST['combienfont43']) ? $_POST['combienfont43'] : NULL; $type = !empty($_POST['type']) ? $_POST['type'] : NULL; $g_p = !empty($_POST['g_p']) ? $_POST['g_p'] : NULL; //----------------------------------------------------------------------- // Traitement du formulaire //----------------------------------------------------------------------- if (!$imagemax || !$audio || !$artist || !$titre || !$lyric || !$combienfont43 || !$type || !$g_p ) { echo "<strong>Un ou plusieurs champs sont vides.</strong>"; }else{ //Enregistrement des fichiers $extensions_validesIM = array( 'jpg' , 'jpeg' , 'gif' , 'png' ); $extension_uploadIMX = strtolower(substr(strrchr($imagemax['name'], '.') ,1) ); if(in_array($extension_uploadIMX,$extensions_validesIM)){ //Créer un identifiant. Nom sans extension $nom = "$artist $titre"; $cheminImax = "../imax/$nom.$extension_uploadIMX"; if( !move_uploaded_file($imagemax['tmp_name'],$cheminImax)){ echo "Erreur lors de la copie du fichier(".$imagemax['tmp_name'].") sur le serveur : " . $cheminImax; } $extensions_validesAU = array( 'mp3'); $extension_uploadAU = strtolower(substr(strrchr($audio['name'],'.'),1)); if ( in_array($extension_uploadAU,$extensions_validesAU) ) { $cheminAu = "../audio/$nom.$extension_uploadAU"; if(!move_uploaded_file($audio['tmp_name'],$cheminAu)){ echo "Erreur lors de la copie du fichier(".$audio['tmp_name'].") sur le serveur : " . $cheminAu; } }else{ echo "Seuls les fichiers de type mp3 sont autorisés."; } }else{ echo "Seuls les fichiers de type 'jpg' , 'jpeg' , 'gif' ou 'png' sont autorisés."; } } ?>
NB : (vu les symptômes que tu décris ....) Attention également à la taille limite des fichiers autorisés par le serveur. C'est un réglage à faire dans le php.ini
les variables à regarder/modifier sont :
upload_max_filesize = 10M
post_max_size = 10M
et/ou dans le .htaccess :
php_value upload_max_filesize 10M
php_value post_max_size 20M
php_value memory_limit 32M
Au passage : https://www.php-fig.org/psr/psr-2/#if-elseif-else
upload_max_filesize = 10M
post_max_size = 10M
J'ai bien redémarré le serveur.
Les fichiers font entre 3 et 5Mo.
+++Peux tu faire un phpinfo pour voir la valeur des variables prises en compte par ton serveur ?+++ Comment cela se fait?
Lorsque que je n'ajoute pas de fichier audio, la valeur de chaque variable est affichée. Mais dès que j'ajoute le fichier audio, il n'y a plus rien.
post_max_size = 10M
J'ai bien redémarré le serveur.
Les fichiers font entre 3 et 5Mo.
+++Peux tu faire un phpinfo pour voir la valeur des variables prises en compte par ton serveur ?+++ Comment cela se fait?
Lorsque que je n'ajoute pas de fichier audio, la valeur de chaque variable est affichée. Mais dès que j'ajoute le fichier audio, il n'y a plus rien.
<br><u>11/03/2017- 12 h 56 min 51 s</u><br><br><b>Variables POST :</b><br><pre>Array ( ) </pre><br><b>Variables FILES :</b><br><pre>Array ( ) </pre><strong>Un ou plusieurs champs sont vides.</strong> <style type="text/css"> body {background-color: #ffffff; color: #000000;} body, td, th, h1, h2 {font-family: sans-serif;} pre {margin: 0px; font-family: monospace;} a:link {color: #000099; text-decoration: none; background-color: #ffffff;} a:hover {text-decoration: underline;} table {border-collapse: collapse;} .center {text-align: center;} .center table { margin-left: auto; margin-right: auto; text-align: left;} .center th { text-align: center !important; } td, th { border: 1px solid #000000; font-size: 75%; vertical-align: baseline;} h1 {font-size: 150%;} h2 {font-size: 125%;} .p {text-align: left;} .e {background-color: #ccccff; font-weight: bold; color: #000000;} .h {background-color: #9999cc; font-weight: bold; color: #000000;} .v {background-color: #cccccc; color: #000000;} .vr {background-color: #cccccc; text-align: right; color: #000000;} img {float: right; border: 0px;} hr {width: 600px; background-color: #cccccc; border: 0px; height: 1px; color: #000000;} </style> <title>phpinfo()</title><meta name="ROBOTS" content="NOINDEX,NOFOLLOW,NOARCHIVE"> <div class="center"> <h2>PHP Variables</h2> <table border="0" cellpadding="3" width="600"> <tbody><tr class="h"><th>Variable</th><th>Value</th></tr> <tr><td class="e">_SERVER["HTTP_HOST"]</td><td class="v">localhost</td></tr> <tr><td class="e">_SERVER["HTTP_CONNECTION"]</td><td class="v">keep-alive</td></tr> <tr><td class="e">_SERVER["CONTENT_LENGTH"]</td><td class="v">6948618</td></tr> <tr><td class="e">_SERVER["HTTP_ACCEPT"]</td><td class="v">text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8</td></tr> <tr><td class="e">_SERVER["HTTP_ORIGIN"]</td><td class="v">http://localhost</td></tr> <tr><td class="e">_SERVER["HTTP_USER_AGENT"]</td><td class="v">Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.66 Safari/537.36</td></tr> <tr><td class="e">_SERVER["CONTENT_TYPE"]</td><td class="v">multipart/form-data; boundary=----WebKitFormBoundaryB45blF1suPEdb7bk</td></tr> <tr><td class="e">_SERVER["HTTP_REFERER"]</td><td class="v">http://localhost/ctn%20hits/CTN%20HITS/admin/ctnhit.php</td></tr> <tr><td class="e">_SERVER["HTTP_ACCEPT_ENCODING"]</td><td class="v">gzip,deflate,sdch</td></tr> <tr><td class="e">_SERVER["HTTP_ACCEPT_LANGUAGE"]</td><td class="v">fr-FR,fr;q=0.8,en-US;q=0.6,en;q=0.4</td></tr> <tr><td class="e">_SERVER["PATH"]</td><td class="v">C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;</td></tr> <tr><td class="e">_SERVER["SystemRoot"]</td><td class="v">C:\Windows</td></tr> <tr><td class="e">_SERVER["COMSPEC"]</td><td class="v">C:\Windows\system32\cmd.exe</td></tr> <tr><td class="e">_SERVER["PATHEXT"]</td><td class="v">.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC</td></tr> <tr><td class="e">_SERVER["WINDIR"]</td><td class="v">C:\Windows</td></tr> <tr><td class="e">_SERVER["SERVER_SIGNATURE"]</td><td class="v"><address>Apache/2.4.9 (Win32) PHP/5.5.12 Server at localhost Port 80</address> </td></tr> <tr><td class="e">_SERVER["SERVER_SOFTWARE"]</td><td class="v">Apache/2.4.9 (Win32) PHP/5.5.12</td></tr> <tr><td class="e">_SERVER["SERVER_NAME"]</td><td class="v">localhost</td></tr> <tr><td class="e">_SERVER["SERVER_ADDR"]</td><td class="v">127.0.0.1</td></tr> <tr><td class="e">_SERVER["SERVER_PORT"]</td><td class="v">80</td></tr> <tr><td class="e">_SERVER["REMOTE_ADDR"]</td><td class="v">127.0.0.1</td></tr> <tr><td class="e">_SERVER["DOCUMENT_ROOT"]</td><td class="v">C:/wamp/www/</td></tr> <tr><td class="e">_SERVER["REQUEST_SCHEME"]</td><td class="v">http</td></tr> <tr><td class="e">_SERVER["CONTEXT_PREFIX"]</td><td class="v"><i>no value</i></td></tr> <tr><td class="e">_SERVER["CONTEXT_DOCUMENT_ROOT"]</td><td class="v">C:/wamp/www/</td></tr> <tr><td class="e">_SERVER["SERVER_ADMIN"]</td><td class="v">admin@example.com</td></tr> <tr><td class="e">_SERVER["SCRIPT_FILENAME"]</td><td class="v">C:/wamp/www/CTN HITS/CTN HITS/Admin/ctnhit.php</td></tr> <tr><td class="e">_SERVER["REMOTE_PORT"]</td><td class="v">49775</td></tr> <tr><td class="e">_SERVER["GATEWAY_INTERFACE"]</td><td class="v">CGI/1.1</td></tr> <tr><td class="e">_SERVER["SERVER_PROTOCOL"]</td><td class="v">HTTP/1.1</td></tr> <tr><td class="e">_SERVER["REQUEST_METHOD"]</td><td class="v">POST</td></tr> <tr><td class="e">_SERVER["QUERY_STRING"]</td><td class="v"><i>no value</i></td></tr> <tr><td class="e">_SERVER["REQUEST_URI"]</td><td class="v">/ctn%20hits/CTN%20HITS/admin/ctnhit.php</td></tr> <tr><td class="e">_SERVER["SCRIPT_NAME"]</td><td class="v">/ctn hits/CTN HITS/admin/ctnhit.php</td></tr> <tr><td class="e">_SERVER["PHP_SELF"]</td><td class="v">/ctn hits/CTN HITS/admin/ctnhit.php</td></tr> <tr><td class="e">_SERVER["REQUEST_TIME_FLOAT"]</td><td class="v">1489233411.581</td></tr> <tr><td class="e">_SERVER["REQUEST_TIME"]</td><td class="v">1489233411</td></tr> </tbody></table><br> </div>1
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
J'ai aucune touche de capture d'écran sur mon pc. Dans un fichier html ça affichera exactement le tableau avec un navigateur.
Dans un fichier html ça affichera exactement le tableau avec un navigateur
Ah bon ??? ..... (c'est ironique bien sûr...)
Tu ne fais pas d'efforts .... tu ne réponds pas à toutes les questions ... tu ne dois pas toutes les lire de toutes façons.....
Bref.. tant que tu ne m'auras pas donné les informations que je te demande... je ne pourrais rien pour toi.
PS: Tu peux ouvrir une question sur le forum Matériel Informatique pour demander où se trouve ( ou comment faire....) une capture écran sur ton PC
Désolé pour le retard. Je n'avais plus de connexion.
Avec un fichier audio
Capture 1

Capture 2

Sans fichier audio
Capture 1

Capture 2

Capture 3

Avec un fichier audio
Capture 1

Capture 2

Sans fichier audio
Capture 1

Capture 2

Capture 3

Désolé pour le retard. Je n'avais plus de connexion. Quand j'essaie de partager les captures d'écran, voici le résultat que j'obtiens:
"Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, webmaster@commentcamarche.com and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log."
"Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, webmaster@commentcamarche.com and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log."
Voici les variables et leurs valeurs lorsque je valide: Avec un fichier audio _SERVER["HTTP_HOST"]=localhost _SERVER["HTTP_CONNECTION"]=keep-alive _SERVER["CONTENT_LENGTH"]=6948618 _SERVER["HTTP_ACCEPT"]=text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 _SERVER["HTTP_ORIGIN"]=http://localhost _SERVER["CONTENT_TYPE"]=multipart/form-data; boundary=----WebKitFormBoundaryB45blF1suPEdb7bk _SERVER["HTTP_REFERER"]=http://localhost/ctn%20hits/CTN%20HITS/admin/ctnhit.php _SERVER["HTTP_ACCEPT_ENCODING"]=gzip,deflate,sdch _SERVER["HTTP_ACCEPT_LANGUAGE"]=fr-FR,fr;q=0.8,en-US;q=0.6,en;q=0.4 _SERVER["PATH"]=C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\; _SERVER["SystemRoot"]=C:\Windows _SERVER["COMSPEC"]=C:\Windows\system32\cmd.exe _SERVER["PATHEXT"]=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC _SERVER["WINDIR"]=>C:\Windows _SERVER["SERVER_SIGNATURE"]=Apache/2.4.9 (Win32) PHP/5.5.12 Server at localhost Port 80 _SERVER["SERVER_SOFTWARE"]=Apache/2.4.9 (Win32) PHP/5.5.12 _SERVER["SERVER_NAME"]=localhost _SERVER["SERVER_ADDR"]=127.0.0.1 _SERVER["SERVER_PORT"]=80 _SERVER["REMOTE_ADDR"]=127.0.0.1 _SERVER["DOCUMENT_ROOT"]=C:/wamp/www/ _SERVER["REQUEST_SCHEME"]=http _SERVER["CONTEXT_PREFIX"]=no value _SERVER["CONTEXT_DOCUMENT_ROOT"]=C:/wamp/www/ _SERVER["SERVER_ADMIN"]=admin@example.com _SERVER["SCRIPT_FILENAME"]=C:/wamp/www/CTN HITS/CTN HITS/Admin/ctnhit.php _SERVER["REMOTE_PORT"]=49775 _SERVER["GATEWAY_INTERFACE"]=CGI/1.1 _SERVER["SERVER_PROTOCOL"]=HTTP/1.1 _SERVER["REQUEST_METHOD"]=POST _SERVER["QUERY_STRING"]=no value _SERVER["REQUEST_URI"]=/ctn%20hits/CTN%20HITS/admin/ctnhit.php _SERVER["SCRIPT_NAME"]=/ctn hits/CTN HITS/admin/ctnhit.php _SERVER["PHP_SELF"]=/ctn hits/CTN HITS/admin/ctnhit.php _SERVER["REQUEST_TIME_FLOAT"]=1489233411.581 _SERVER["REQUEST_TIME"]=1489233411 Sans fichier audio _REQUEST["type"]=Clip _REQUEST["g_p"]=Gratuit _REQUEST["artist"]=Artiste X _REQUEST["titre"]=Titre X _REQUEST["lyric"]=Le lyric _REQUEST["combienfont43"]=7 _POST["type"]=Clip _POST["g_p"]=Gratuit _POST["artist"]=Artiste X _POST["titre"]=Titre X _POST["lyric"]=Le lyric _POST["combienfont43"]=7 _FILES["audio"] Array ( [name] = [type] =& [tmp_name] = [error] = 4 [size] = 0 ) _FILES["imagemax"] Array ( [name] = L'image.JPG [type] = image/jpeg [tmp_name] =C:\wamp\tmp\php82DA.tmp [error] = 0 [size] = 3084953 ) _SERVER["HTTP_HOST"]=localhost _SERVER["HTTP_CONNECTION"]=keep-alive _SERVER["CONTENT_LENGTH"]=3085881 _SERVER["HTTP_ACCEPT"]=text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 _SERVER["HTTP_ORIGIN"]=http://localhost _SERVER["CONTENT_TYPE"]=multipart/form-data; boundary=----WebKitFormBoundarydIrZCfWZ46uI778Y _SERVER["HTTP_REFERER"]=http://localhost/ctn%20hits/CTN%20HITS/admin/ctnhit.php _SERVER["HTTP_ACCEPT_ENCODING"]=gzip,deflate,sdch _SERVER["HTTP_ACCEPT_LANGUAGE"]=fr-FR,fr;q=0.8,en-US;q=0.6,en;q=0.4 _SERVER["PATH"]=C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;</td></tr> _SERVER["SystemRoot"]=C:\Windows _SERVER["COMSPEC"]=C:\Windows\system32\cmd.exe _SERVER["PATHEXT"]=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC _SERVER["WINDIR"]=C:\Windows _SERVER["SERVER_SIGNATURE"]=address;Apache/2.4.9 (Win32) PHP/5.5.12 Server at localhost Port 80</address> _SERVER["SERVER_SOFTWARE"]=Apache/2.4.9 (Win32) PHP/5.5.12 _SERVER["SERVER_NAME"]=localhost _SERVER["SERVER_ADDR"]=127.0.0.1 _SERVER["SERVER_PORT"]=80 _SERVER["REMOTE_ADDR"]=127.0.0.1 _SERVER["DOCUMENT_ROOT"]=C:/wamp/www/ _SERVER["REQUEST_SCHEME"]=http _SERVER["CONTEXT_PREFIX"]=no value _SERVER["CONTEXT_DOCUMENT_ROOT"]=C:/wamp/www/ _SERVER["SERVER_ADMIN"]=admin@example.com _SERVER["SCRIPT_FILENAME"]=C:/wamp/www/CTN HITS/CTN HITS/Admin/ctnhit.php _SERVER["REMOTE_PORT"]=51140 _SERVER["GATEWAY_INTERFACE"]=CGI/1.1 _SERVER["SERVER_PROTOCOL"]=HTTP/1.1 _SERVER["REQUEST_METHOD"]=POST _SERVER["QUERY_STRING"]=no value _SERVER["REQUEST_URI"]=/ctn%20hits/CTN%20HITS/admin/ctnhit.php _SERVER["SCRIPT_NAME"]=/ctn hits/CTN HITS/admin/ctnhit.php _SERVER["PHP_SELF"]=/ctn hits/CTN HITS/admin/ctnhit.php _SERVER["REQUEST_TIME_FLOAT"]=1489282914.728 _SERVER["REQUEST_TIME"]=1489282914 Je partagerai les captures d'écran dès que possible.