IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Récupération de variables depuis un formulaire sous PHP7


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Homme Profil pro
    Retraite
    Inscrit en
    Janvier 2019
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Retraite

    Informations forums :
    Inscription : Janvier 2019
    Messages : 17
    Points : 4
    Points
    4
    Par défaut Récupération de variables depuis un formulaire sous PHP7
    Bonjour,
    ceci est mon premier post, je demande donc votre indulgence si je ne suis pas dans le bon forum
    J'ai développé un site avec beaucoup de PHP qui fonctionne bien (http://F6FLU.fr) axé sur le radio-amateurisme car je suis Radio-Amateur
    ce site fonctionne très bien et, est en PHP5 (j'ai mis phpinfo à la racine si vous voulez voir)
    J'essaie sur un autre provider de passer mon site en PHP7 et là, je n'arrive pas à récupérer mes variables passées dans un formulaire (le même que sur le site en PHP5), mais ça fait plusieurs jours que je galère sur le sujet, j'ai lu beaucoup d'articles ici sur le sujet mais je n'y arrive toujours pas ; alors si vous pouviez m'aider
    le code est le suivant (enfin une partie qui nous intéresse)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    <FORM METHOD="POST" ENCTYPE="multipart/form-data">
    	<table width="60%" border="1" cellspacing="0">	
    		<tr><td>
    		<table width="60%" border="0" align="center" cellspacing="0">
    			<tr ><td>
    			<div align="right" class="Style5">
    			<input name="userfile" type="file" size="40"  />
    			</div>
    			 <input type="hidden" name="MAX_FILE_SIZE" value="<?php echo $MFS;?>" />
    			 <input type="hidden" name="file" value="<?php echo $file;?>" /></td>
    			</tr>
    		</table>
     
    		<table width="100%" border="0" cellspacing="0">	
    			<tr><td bgcolor="#CCCCCC" colspan="4" align="center" bgcolor="#FFFFCC">
    			<input name="bp_enreg" type="submit" value="Extraire" />
    			</td></tr>
    		</table>
    	</td></tr>
    	</table>
    </form>	
     
    <?php
     
    $erreur = "" ;
    	if ($file != "")
    		{
    		// entête du tableau d'affichage des résultats
    		echo "<table width='100%' border='0' cellspacing='0'>";
    		echo "<tr bgcolor='#FFFFFF'  align='center'>";
    		echo "<td ><div align='center' class='Isel'>Date </td>";
    		echo "<td ><div align='center' class='Isel'>Heure Début</td>";
    		// echo "<td ><div align='center' class='Isel'>Heure Fin</td>";
    		echo "<td ><div align='center' class='Isel'>Indicatif </td>";
    		echo "<td ><div align='center' class='Isel'>Pays </td>";
    		echo "<td ><div align='center' class='Isel'>Cont </td>";
    		echo "<td ><div align='center' class='Isel'>IOTA </td>";
    		echo "<td ><div align='center' class='Isel'>DXCC </td>";
    		echo "<td ><div align='center' class='Isel'>Bande </td>";
    		echo "<td ><div align='center' class='Isel'>Mode </td>";
    		echo "<td ><div align='center' class='Isel'>Dpt </td>";
    		echo "<td ><div align='center' class='Isel'>Zone CQ </td>";
    		echo "<td ><div align='center' class='Isel'>Zone ITU </td>";		
    		echo "<td ><div align='center' class='Isel'>RST_S</td>";	
    		echo "<td ><div align='center' class='Isel'>RST_R</td>";	
    		echo "<td ><div align='center' class='Isel'>QSL envoyée</td>";		
    		echo "<td ><div align='center' class='Isel'>QSL reçue</td>";	
    		echo "<td ><div align='center' class='Isel'>eQSL envoyée</td>";		
    		echo "<td ><div align='center' class='Isel'>eQSL reçue</td>";
    		echo "<td ><div align='center' class='Isel'>LOTW envoyée</td>";		
    		echo "<td ><div align='center' class='Isel'>LOTW reçue</td>";
    		echo "<td ><div align='center' class='Isel'>QSO_Number</td>";					
    		// echo "<td ><div align='center' class='Isel'>QSL via</td>";		
    		// echo "<td ><div align='center' class='Isel'>Locator</td>";				
    		echo "</tr>";
    et mon script s'arrête avec

    Notice: Undefined variable: file in Create_Csv.php on line 570

    La ligne 570 est la ligne : if ($file != "")

    j'ai essayé avec $_POST[file] mais c'est pareil

    Donc merci par avance si une bonne âme voulait bien m'aider
    Bien cordialement
    Daniel

  2. #2
    Membre habitué Avatar de Skunka
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2018
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2018
    Messages : 135
    Points : 158
    Points
    158
    Par défaut
    Bonjour,
    je suis étudiant mais je vais essayer de t'apporter mon aide avec les connaissances que j'ai.

    A première vue, je dirais qu'il manque l'attribut " action=' ' " dans la balise <form> pour définir où tu envoies les données de ton formulaire (un autre fichier, ou lui même, c'est possible). Dans ton cas, si j'ai bien compris, cela donnerais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <FORM METHOD="POST" ENCTYPE="multipart/form-data" action="Create_Csv.php">
    .
    Sinon, le deuxième point que je remarque est Il faut, comme tu le fais remarquer, utilisé $_POST["file"] (avec les double côtes), ce qui donnerais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ($_POST["file"] != "")
    .

    En espérant que cela règle ton problème, je fais appel à l'indulgence également, j'aide rarement sur le forum étant donné que des personnes plus compétentes sont à même de le faire :p

    Cordialement,
    Skunka.
    Traverse les rues ...

    Git: https://github.com/BlueSkunka

    Débutant à vie

  3. #3
    Candidat au Club
    Homme Profil pro
    Retraite
    Inscrit en
    Janvier 2019
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Retraite

    Informations forums :
    Inscription : Janvier 2019
    Messages : 17
    Points : 4
    Points
    4
    Par défaut Merci
    Bonjour
    Merci beaucoup je vais regarder ça
    Je te tiens au courant et merci encore d'avoir bien voulu prendre un peu de temps pour m'aider
    Je reviens dès que j'ai testé

  4. #4
    Candidat au Club
    Homme Profil pro
    Retraite
    Inscrit en
    Janvier 2019
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Retraite

    Informations forums :
    Inscription : Janvier 2019
    Messages : 17
    Points : 4
    Points
    4
    Par défaut
    Bonsoir
    malheureusement, ça ne change rien, je n'arrive toujours pas à récupérer le nom du fichier passé dans le formulaire ...

  5. #5
    Membre habitué Avatar de Skunka
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2018
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2018
    Messages : 135
    Points : 158
    Points
    158
    Par défaut
    Bonsoir,
    dans ces cas là, je me sert de var_dump() afin de déterminer d'où provient le problème, essaies:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <?php var_dump($file); ?>
    <FORM METHOD="POST" ENCTYPE="multipart/form-data">
    	<table width="60%" border="1" cellspacing="0">
    Et:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var_dump($_POST["file"]);
    $erreur = "" ;
    	if ($file != "")
    Cela t'affichera ce que contiennent tes variables lors des tests et de se rendre compte de ce qu'elles contiennent et si c'est ce qui est prévu.
    Traverse les rues ...

    Git: https://github.com/BlueSkunka

    Débutant à vie

  6. #6
    Membre chevronné

    Homme Profil pro
    développeur
    Inscrit en
    Octobre 2013
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : développeur

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 576
    Points : 1 989
    Points
    1 989
    Par défaut
    Salut,

    Si le code php est situé dans le même fichier que le formulaire pas besoin de l'attribut action. Après tu dois tester ton submit pour checker ,perso j'utilise
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(!empty($_POST['nomDetonSubmit'])){}
    Pour les fichiers un exemple dans la dochttps://secure.php.net/manual/fr/fea...ost-method.php tu dois utiliser $_FILES et non $_POST

    Après comme conseillé par snuka un var_dump ou var_export te donnera plus visibilité
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var_dump($_FILES, $_POST);

  7. #7
    Candidat au Club
    Homme Profil pro
    Retraite
    Inscrit en
    Janvier 2019
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Retraite

    Informations forums :
    Inscription : Janvier 2019
    Messages : 17
    Points : 4
    Points
    4
    Par défaut PHP Formuliare
    Bonjour

    merci beaucoup mais pour moi c'est toujours pareil, mais je ne suis pas sûr d'avoir bien tout compris alors voilà ce que j'ai fait
    </p>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    <?php var_dump($file); ?>
    <FORM METHOD="POST" ENCTYPE="multipart/form-data" action="Create_Csv.php">
    	<table width="60%" border="1" cellspacing="0">	
    		<tr><td>
    		<table width="60%" border="0" align="center" cellspacing="0">
    			<tr ><td>
    			<div align="right" class="Style5">
    			<input name="userfile" type="file" size="40"  />
    			</div>
    			 <input type="hidden" name="MAX_FILE_SIZE" value="<?php echo $MFS;?>" />
    			 <input type="hidden" name="file" value="<?php echo $file;?>" /></td>
    			</tr>
    		</table>
     
    		<table width="100%" border="0" cellspacing="0">	
    			<tr><td bgcolor="#CCCCCC" colspan="4" align="center" bgcolor="#FFFFCC">
    			<input name="bp_enreg" type="submit" value="Extraire" />
    			</td></tr>
    		</table>
    	</td></tr>
    	</table>
    </form>	
     
    <?php
     
    var_dump($_FILES, $_POST);
    $erreur = "" ;
    // echo ("<br>var_dump($_POST[file]) <br>");
     
    if(!empty($_POST['file']))
    	// if ($file != "")
    	// if (($_POST['file']) != "")
    		{
    		echo ("<br> on construit la table <br>");
    et voilà ce que ça m'affiche :

    Nom : CE_ 2019-01-25 à 09.39.28.jpg
Affichages : 510
Taille : 81,0 Ko

    merci encore de votre aide

    la ligne 541 c'est : <?php var_dump($file); ?>

  8. #8
    Membre chevronné

    Homme Profil pro
    développeur
    Inscrit en
    Octobre 2013
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : développeur

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 576
    Points : 1 989
    Points
    1 989
    Par défaut
    $file n'est pas affecté il ne contient rien! En php pour récupéré tes valeurs de fichier tu ne dois pas utiliser $_POST mais $_FILES tu dois vraiment lire cette page https://secure.php.net/manual/fr/fea...ost-method.php

    Ici tu aurais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    /* Si on à un fichier alors
    */
    if(!empty($_FILES['file']))
    {
     // Code à executer
     
    }

  9. #9
    Candidat au Club
    Homme Profil pro
    Retraite
    Inscrit en
    Janvier 2019
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Retraite

    Informations forums :
    Inscription : Janvier 2019
    Messages : 17
    Points : 4
    Points
    4
    Par défaut
    re bonjour

    et c'est bien la récupération des varibales du formulaire qui pose problème
    car dans le formulaire
    <input type="hidden" name="file" value="<?php echo $file;?>" /></td>
    j'ai bien le nom du fichier sélectionné qui s'affiche

    donc c'est ensuite pour récupérer ces noms qui pose Pb, mais j'arrive pas à trouver ...
    Je continu de chercher, car c'est assez simple comme script et c'est bien juste la récupération des varaibles du formulaire qui pose PB ...
    en tous cas merci à vous d'avoir bien voulu essayer de m'aider

  10. #10
    Candidat au Club
    Homme Profil pro
    Retraite
    Inscrit en
    Janvier 2019
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Retraite

    Informations forums :
    Inscription : Janvier 2019
    Messages : 17
    Points : 4
    Points
    4
    Par défaut
    Bonjour
    Citation Envoyé par kevin254kl Voir le message
    $file n'est pas affecté il ne contient rien! En php pour récupéré tes valeurs de fichier tu ne dois pas utiliser $_POST mais $_FILES tu dois vraiment lire cette page https://secure.php.net/manual/fr/fea...ost-method.php

    Ici tu aurais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    /* Si on à un fichier alors
    */
    if(!empty($_FILES['file']))
    {
     // Code à executer
     
    }
    oui je ne fais que ça; lire et relire, mais tu sais quand on a la tête dans le guidon, on ne voit rien :-)
    j'ai essayé différentes choses maintenant mon code est comme ça
    ========================
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    <FORM METHOD="POST" ENCTYPE="multipart/form-data">
    	<table width="60%" border="1" cellspacing="0">	
    		<tr>
    			<td>
    				<table width="60%" border="0" align="center" cellspacing="0">
    					<tr >
    						<td>
    							<div align="right" class="Style5">
    								<input type="hidden" name="MAX_FILE_SIZE" value="<?php echo $MFS;?>" />
    								<input name="userfile" type="file" size="40" />
    								<input type="hidden" name="fichier" value="<?php echo $fichier;?>" />
    							</div>
    						</td>
    					</tr>
    				</table>
     
    				<table width="100%" border="0" cellspacing="0">	
    					<tr>
    						<td bgcolor="#CCCCCC" colspan="4" align="center" bgcolor="#FFFFCC">
    						<input name="bp_enreg" type="submit" value="Extraire" />
    						</td>
    					</tr>
    				</table>
    			</td>
    		</tr>
    	</table>
    </form>	
     
     
    <?php
     
    echo ("<br>affichage des variables FILES et POST que l'on devrait récupérer depuis le formulaire L 514<br>")	;
    var_dump($_FILES);
    echo ("<br>");
    var_dump($_POST);
    echo ("<br>");
     
    // $fichier = $_FILES['file']['name'];
     
    // echo ("fichier : $fichier <br>");
     
    if (isset ($_FILES['bp_enreg']))
    	{
    		$bp_enreg=1;
    		echo ("<br> on a bien validé l'extraction du fichier L 521<br>");
    	}
    	else
    	{
    		$bp_enreg=0;
    		echo("<br> On n'a pas validé l'extraction du fichier L 526<br>");
    	}
     
    // Taille max des fichiers (octets)
    $MFS = 10000000 ; 
     
    // =======================================================================  
    /* 
        $rep est un dossier  de stockage .
     -  Ce dossier doit exister sur le site.
     -  C'est un sous dossier du dossier où se trouve le script PHP
     */
     // =======================================================================
     
    $rep = "upload/" ;   
     
    if(isset($_FILES['fichier']))
    	{
    		$file = $_FILES['fichier'];
    		echo ("<br> On met le nom du fichier à traiter dans la variable file L 542 <br>");
    	}
     
    if(isset($_FILES['userfile']))
    	{
    	echo ("<br> on a récupéré le nom du fichier userfile L 547<br>");
     
    	if($_FILES['userfile']['size']>0) 
    		{
    		$ext=strtoupper($_FILES['userfile']['name']);
     
    		$pext3=strpos($ext,".ADI");
    		if ($pext3 !=0)	
    			{
     
    			// sauvegarde du nom du fichier encours suffixé par _M.csv
    			// ce fichier sera crée ensuite
     
    			$file_M = substr($ext,0,$pext3)."_M.csv";
    			$savefile= $rep.$_FILES['userfile']['name'];
    			$temp = $_FILES['userfile']['tmp_name'];
     
    			if (move_uploaded_file($temp, $savefile)) 
    				{
    				$file=$_FILES['userfile']['name'];
    				}
    			else 
    				{ 
    				echo "<b>Erreur d'enregistrement !</b>";
    				$file="";
    				}
    			}
    		else
    			{
    			echo $_FILES['userfile']['name'] . " : fichier non valide." . '<br>';
    			echo "Seuls sont admis les fichiers .adi";
    			$file="";
    			}
    		}	
    	else 
    		if ($file =="")
    			echo "<b>Fichier non valide. </b>";
    	}
     
    echo ("<br> on n'a pas récupéré le nom du fichier L 586<br>");
     
    $erreur = "" ;
    // echo ("<br>var_dump($_POST[file]) <br>");
     
    if(!empty($_FILES['fichier']))
    	// if ($file != "")
    	// if (($_POST['file']) != "")
    		{
    		echo ("<br> on construit la table <br>");
    etc....
    ======================

    mais ça ne change rien, je ne récupère toujours pas mes variables
    ça devient désolant ....

  11. #11
    Membre chevronné

    Homme Profil pro
    développeur
    Inscrit en
    Octobre 2013
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : développeur

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 576
    Points : 1 989
    Points
    1 989
    Par défaut
    Tu vas y arriver il faut s'accrocher

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    <form METHOD="POST" ENCTYPE="multipart/form-data">
    	<table width="60%" border="1" cellspacing="0">	
    		<tr><td>
    		<table width="60%" border="0" align="center" cellspacing="0">
    			<tr ><td>
    			<div align="right" class="Style5">
    			<input name="userfile" type="file" size="40"  />
    			</div>
    			 <input type="hidden" name="MAX_FILE_SIZE" value="1000" />
    			</td>
    			</tr>
    		</table>
     
    		<table width="100%" border="0" cellspacing="0">	
    			<tr><td bgcolor="#CCCCCC" colspan="4" align="center" bgcolor="#FFFFCC">
    			<input name="bp_enreg" type="submit" value="Extraire" />
    			</td></tr>
    		</table>
    	</td></tr>
    	</table>
    </form>	
     
    <?php
     
    $erreur = "" ;
    	// Si on a pas cliqué alors on affiche pas, lors du clique la page est rechargé avec en post la valeur de bp_enreg
    	if(!empty($_POST['bp_enreg']))
    	{
    	$file = (!empty($_FILES['userfile']['name'])) ? $_FILES['userfile']['name'] : '';
    	// Les données du fichier
    	var_dump($_FILES);
    	if ($file !== "")
    		{
    		// entête du tableau d'affichage des résultats
    		echo "<table width='100%' border='0' cellspacing='0'>";
    		echo "<tr bgcolor='#FFFFFF'  align='center'>";
    		echo "<td ><div align='center' class='Isel'>Date </td>";
    		echo "<td ><div align='center' class='Isel'>Heure Début</td>";
    		// echo "<td ><div align='center' class='Isel'>Heure Fin</td>";
    		echo "<td ><div align='center' class='Isel'>Indicatif </td>";
    		echo "<td ><div align='center' class='Isel'>Pays </td>";
    		echo "<td ><div align='center' class='Isel'>Cont </td>";
    		echo "<td ><div align='center' class='Isel'>IOTA </td>";
    		echo "<td ><div align='center' class='Isel'>DXCC </td>";
    		echo "<td ><div align='center' class='Isel'>Bande </td>";
    		echo "<td ><div align='center' class='Isel'>Mode </td>";
    		echo "<td ><div align='center' class='Isel'>Dpt </td>";
    		echo "<td ><div align='center' class='Isel'>Zone CQ </td>";
    		echo "<td ><div align='center' class='Isel'>Zone ITU </td>";		
    		echo "<td ><div align='center' class='Isel'>RST_S</td>";	
    		echo "<td ><div align='center' class='Isel'>RST_R</td>";	
    		echo "<td ><div align='center' class='Isel'>QSL envoyée</td>";		
    		echo "<td ><div align='center' class='Isel'>QSL reçue</td>";	
    		echo "<td ><div align='center' class='Isel'>eQSL envoyée</td>";		
    		echo "<td ><div align='center' class='Isel'>eQSL reçue</td>";
    		echo "<td ><div align='center' class='Isel'>LOTW envoyée</td>";		
    		echo "<td ><div align='center' class='Isel'>LOTW reçue</td>";
    		echo "<td ><div align='center' class='Isel'>QSO_Number</td>";					
    		// echo "<td ><div align='center' class='Isel'>QSL via</td>";		
    		// echo "<td ><div align='center' class='Isel'>Locator</td>";				
    		echo "</tr>";
     
    	}
    	}
    Pour moi ça fonctionne de mon côté.

  12. #12
    Candidat au Club
    Homme Profil pro
    Retraite
    Inscrit en
    Janvier 2019
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Retraite

    Informations forums :
    Inscription : Janvier 2019
    Messages : 17
    Points : 4
    Points
    4
    Par défaut Formulaire
    Merci Kevin mais ça ne fonctionne toujours pas ici

    $file = (!empty($_FILES['userfile']['name'])) ? $_FILES['userfile']['name'] : '';

    ça fait quoi exactement ?
    mais attention le fichier que je passe en Input a une taille de 17 Mo ...

    sinon éventuellement je peux te passer le script et mon fichier de test pour voir si c'est bon chez toi
    peut être également un Pb du côté serveur ici ?

    en tous cas merci beaucoup de ne pas m'abandonner , je suis au bord du gouffre :-)

  13. #13
    Membre chevronné

    Homme Profil pro
    développeur
    Inscrit en
    Octobre 2013
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : développeur

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 576
    Points : 1 989
    Points
    1 989
    Par défaut
    Citation Envoyé par DLavocat Voir le message
    Merci Kevin mais ça ne fonctionne toujours pas ici

    $file = (!empty($_FILES['userfile']['name'])) ? $_FILES['userfile']['name'] : '';

    ça fait quoi exactement ?
    mais attention le fichier que je passe en Input a une taille de 17 Mo ...

    sinon éventuellement je peux te passer le script et mon fichier de test pour voir si c'est bon chez toi
    peut être également un Pb du côté serveur ici ?

    en tous cas merci beaucoup de ne pas m'abandonner , je suis au bord du gouffre :-)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    // Si $_FILES['userfile']['name'] est différent de vide alors tu mets $_FILES['userfile']['name'] dans $file sinon tu mets '' est donc une chaine vide
    $file = (!empty($_FILES['userfile']['name'])) ? $_FILES['userfile']['name'] : '';
    Quand tu dis ça ne fonctionne pas, tu as un erreur? Rien ne s'affiche? Tu as essayé de cliquer?
    17 MO quel type de serveur utilises tu, car php à une limite en taille, si tu essais avec un fichier test plus petit cela fonctionne?
    Un tuto très bien expliqué pour t'aider https://antoine-herault.developpez.c...ls/php/upload/

  14. #14
    Candidat au Club
    Homme Profil pro
    Retraite
    Inscrit en
    Janvier 2019
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Retraite

    Informations forums :
    Inscription : Janvier 2019
    Messages : 17
    Points : 4
    Points
    4
    Par défaut
    Re
    Non rien ne s'affiche
    Je n'ai pas essayé avec un fichier plus petit, je vais le faire effectivement mais en test réel j'ai besoin d'utiliser ce fichier
    Je vais regarder le lien que tu m'as donné, merci

  15. #15
    Membre chevronné

    Homme Profil pro
    développeur
    Inscrit en
    Octobre 2013
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : développeur

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 576
    Points : 1 989
    Points
    1 989
    Par défaut
    Avant ton if fait un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var_dump($_FILES, $_POST);
    tu regardes ce que ça affiche avant ton clique et après.

  16. #16
    Candidat au Club
    Homme Profil pro
    Retraite
    Inscrit en
    Janvier 2019
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Retraite

    Informations forums :
    Inscription : Janvier 2019
    Messages : 17
    Points : 4
    Points
    4
    Par défaut c'est OK ...
    Bonjour
    Merci kevin
    j'ai diminué la taille du fichier et là effectivement ça fonctionne bien
    au départ j'ai pour *_FILES et $_POST
    array(0) { }
    array(0) { }
    ensuite après avoir sélectionne le fichier en input

    array(1) { ["userfile"]=> array(5) { ["name"]=> string(9) "F6FLU.ADI" ["type"]=> string(24) "application/octet-stream" ["tmp_name"]=> string(39) "/storage/ssd5/363/8490363/tmp/phpTRjAe6" ["error"]=> int(0) ["size"]=> int(37659) } }
    array(2) { ["MAX_FILE_SIZE"]=> string(7) "1000000" ["bp_enreg"]=> string(8) "Extraire" }

    array(1) { ["userfile"]=> array(5) { ["name"]=> string(9) "F6FLU.ADI" ["type"]=> string(24) "application/octet-stream" ["tmp_name"]=> string(39) "/storage/ssd5/363/8490363/tmp/phpTRjAe6" ["error"]=> int(0) ["size"]=> int(37659) } }
    array(2) { ["MAX_FILE_SIZE"]=> string(7) "1000000" ["bp_enreg"]=> string(8) "Extraire" }

    Donc maintenant j'ai encore quelques petites erreurs qui trainent, je vais regarder
    Visiblement le Pb est dû à la taille du fichier
    je ne sais pas comment faire pour pouvoir lire un fichier disons jusqu'à 20 Mo , une idée ? faut peut être mettre une instruction dans le fichier PHP.ini ?

    en tous cas je te remercie vraiment de ton aide et de ta patience
    Mais peux tu m'expliquer ce que fait exactement cette ligne
    $file = (!empty($_FILES['userfile']['name'])) ? $_FILES['userfile']['name'] : '';

    je suppose que c'est équivalent à
    si $_FILES['userfile']['name'] non vide
    alors
    $file = $_FILES['userfile']['name']

    c'est à dire que le ? est équivalent ç "alors" ? mais pourquoi on a 2 points à la fin ?

    merci encore je poursuit

  17. #17
    Membre chevronné

    Homme Profil pro
    développeur
    Inscrit en
    Octobre 2013
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : développeur

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 576
    Points : 1 989
    Points
    1 989
    Par défaut
    DLavocat,

    Dans
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $file = (!empty($_FILES['userfile']['name'])) ? $_FILES['userfile']['name'] : '';
    c'est pour raccourcir le if on appelle ça une ternaire , ça donne avec un if
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if(!empty($_FILES['userfile']['name']))
    {
    $file = !empty($_FILES['userfile']['name']);
    }
    else
    {
    $file = '';
    }
    Pour le problème de taille maximal cette limitation est prévue par sécurité. Tu peux faire un et voir la constante https://stackoverflow.com/questions/...load-file-size utilise init_set si tu ne peux pas modifier ton php.ini https://secure.php.net/manual/en/function.ini-set.php . Fait attention au danger potentiel que cela représente

  18. #18
    Candidat au Club
    Homme Profil pro
    Retraite
    Inscrit en
    Janvier 2019
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Retraite

    Informations forums :
    Inscription : Janvier 2019
    Messages : 17
    Points : 4
    Points
    4
    Par défaut
    Bonsoir
    Oui j'ai un fichier phpinfo.php à la racine de mon site
    Je n'ai pas de php.ini je vais en créer un
    En regardant phpinfo je suis limité à 8Mo je vais faire les modifs dàs le php.ini et voir si ça règle le Pb
    Merci beaucoup

  19. #19
    Membre chevronné

    Homme Profil pro
    développeur
    Inscrit en
    Octobre 2013
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : développeur

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 576
    Points : 1 989
    Points
    1 989
    Par défaut
    Attention le php.ini est le fichier de configuration de php, tu ne peux donc le trouver que dans le dossier php d'installation sur le serveur http http://php.net/manual/fr/configuration.file.php! Si tu es chez un hébergeur tu ne pourras pas le modifier puisque c'est mutualisé sauf si tu as ta propre installation. La solution est donc d'utiliser la fonction init_set() dans ton fichier pour modifier la taille maximal d'upload de tes fichiers

  20. #20
    Candidat au Club
    Homme Profil pro
    Retraite
    Inscrit en
    Janvier 2019
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Retraite

    Informations forums :
    Inscription : Janvier 2019
    Messages : 17
    Points : 4
    Points
    4
    Par défaut
    Bonjour
    Merci Kevin, effectivement je suis sur un serveur en mode "gratuit" (https://dlavocat.000webhostapp.com) et visiblement ils n'acceptent pas que l'on modifie ces tailles
    J'ai regardé pourquoi sur OVH je n'ai pas ces Pbs et bien simplement parce que par défaut OVH a post_max_size = 130M et upload_max_filesize = 128

    je vais chercher si je peux trouver un provider qui permette la gestion d'une base de donnée et cela gratuitement sinon je vais faire autrement ...

    Merci encore

Discussions similaires

  1. [MySQL] Récupération des variables avec un formulaire
    Par juju03 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 16/06/2008, 18h43
  2. Récupération de variable d'un formulaire dynamique
    Par The metalhorseman dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 16/02/2007, 12h29
  3. Récupération de variable dans un Formulaire
    Par dunbar dans le forum Langage
    Réponses: 5
    Dernier message: 30/11/2006, 21h00
  4. [MySQL] récupération de variables depuis flash avec loadvar()
    Par lochou dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 24/10/2006, 00h07
  5. Réponses: 5
    Dernier message: 08/09/2005, 21h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo