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érer variable définie dans une portion PHP dans une autre portion de PHP


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Inscrit en
    Septembre 2010
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 27
    Points : 14
    Points
    14
    Par défaut Récupérer variable définie dans une portion PHP dans une autre portion de PHP
    Bonsoir !

    j'ai un petit problème concernant la récupération des données d'une variable. Si quelqu'un pouvait me trouver la solution ou me guider un peu je suis perdue.
    En effet, si je définis une variable dans une première portion <?php .... ?>
    je ne peux la récupérer dans mon 2e <?php .... ?>

    ici je voudrais récupérer $v_titre

    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
     
    <?php
    session_start();
    include('DBinfo.php');
    $link = mysqli_connect($host,$user,$pass,$dbname);
    if (!$link) {
    die('Could not connect: ' . mysqli_error($link));
    }
     
    if( isset($_POST['submit']) ){
    		 mysqli_query($link,"SET NAMES UTF8");
             $v_titre=addslashes($_POST["titre"]);
             $v_keyword = addslashes($_POST["keyword"]);
             $v_fait_par = addslashes($_POST["fait_par"]);
             $v_desc= addslashes($_POST["description"]);
             /*$v_nom_type_doc=addslashes($_POST["type"]);*/
             $jour=$_POST["day"];
             $mois=$_POST["month"];
             $annee=$_POST["year"];
     
    		$query = "INSERT INTO document  VALUES ('','$v_titre','$v_keyword','$v_fait_par', '$annee-$mois-$jour', '$v_desc', '1' ,'')";		 
    		$res1 = mysqli_query($link,$query);
     
     
     
    }
     
    //header('location: Modifier.php');
     
    		 ?>
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
     
    <html xmlns="http://www.w3.org/1999/xhtml">
    // mon code html qui contient un input de name 'upload'
     
      <?php
     
     
    if( isset($_POST['upload']) ) // si formulaire soumis
    {
        $content_dir = "./doc/"; // dossier où sera déplacé le fichier
     
        $tmp_file = $_FILES['fichier']['tmp_name'];
     
        if( !is_uploaded_file($tmp_file) )
        {
            exit("Le fichier est introuvable");
        }
     
        // on copie le fichier dans le dossier de destination
        $name_file = $_FILES['fichier']['name'];
     
        if( !move_uploaded_file($tmp_file, $content_dir . $name_file) )
        {
            exit("Impossible de copier le fichier dans $content_dir");
        }
    else{
        $query = "UPDATE document SET   document.piece_jointe ='$name_file' WHERE document.doc_titre = '$v_titre; ";	
     
    	$res1 = mysqli_query($link,$query);
    	echo "Le fichier est enregistr&eacute;"."  --  ";
    	echo "$name_file  ".$name_file."  --  ";
    	echo "tmp_file  ".$tmp_file;
    	}
    }
    //header('location: Modifier.php');
    ?>   
     
    </html>
    Merci d'avance !

  2. #2
    Membre émérite
    Avatar de skeud
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    1 091
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

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

    Informations forums :
    Inscription : Juin 2011
    Messages : 1 091
    Points : 2 724
    Points
    2 724
    Billets dans le blog
    1
    Par défaut
    Les variable que tu créé dans une partie de ta page php sont valables tout le long de ta page, le probleme vient du fait que tu ne rentres pas dans le premier "if" donc ta variable n'est pas setter quand tu passe dans le deuxieme

  3. #3
    Membre à l'essai
    Inscrit en
    Septembre 2010
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 27
    Points : 14
    Points
    14
    Par défaut
    Oui j'ai déjà essayé de la de la mettre hors du if, mais quand je charge la page , j'ai plein d'erreurs qui s'affiche

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    utilise mysqli_set_charset pour mettre ton encodage et mysqli_real_escape_string pour protéger tes valeurs

  5. #5
    Membre émérite
    Avatar de skeud
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    1 091
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

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

    Informations forums :
    Inscription : Juin 2011
    Messages : 1 091
    Points : 2 724
    Points
    2 724
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par nemo89 Voir le message
    Oui j'ai déjà essayé de la de la mettre hors du if, mais quand je charge la page , j'ai plein d'erreurs qui s'affiche
    Normal tu charge cette variable a partir d'une autre transmise en post, stock la dans une variable de session a la place comme sa tu y accede a chaque fois

  6. #6
    Membre à l'essai
    Inscrit en
    Septembre 2010
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 27
    Points : 14
    Points
    14
    Par défaut
    Une question stupide comment je fais pour la stoker dans une variable de session?

  7. #7
    Membre à l'essai
    Inscrit en
    Septembre 2010
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 27
    Points : 14
    Points
    14
    Par défaut
    Citation Envoyé par stealth35 Voir le message
    utilise mysqli_set_charset pour mettre ton encodage et mysqli_real_escape_string pour protéger tes valeurs
    ou faut-il utiliser exactement mysqli_set_charset et mysqli_real_escape_string?
    lors de l'enregistrement de mes variables?

  8. #8
    Membre à l'essai
    Inscrit en
    Septembre 2010
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 27
    Points : 14
    Points
    14
    Par défaut
    Citation Envoyé par skeud Voir le message
    Normal tu charge cette variable a partir d'une autre transmise en post, stock la dans une variable de session a la place comme sa tu y accede a chaque fois
    voila ce que j'ai fait, mais il semblerait que je n'ai pas très bien compris son fonctionnement (dans l'insertion dans ma base)

    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
     
     
    if( isset($_POST['submit']) ){
    		 mysqli_query($link,"SET NAMES UTF8");
    		 //$_SESSION['variable'] = $valeur ;
             $_SESSION['$v_titre']=addslashes($_POST["titre"]);
             $_SESSION['$v_keyword'] = addslashes($_POST["keyword"]);
             $_SESSION['$v_fait_par'] = addslashes($_POST["fait_par"]);
             $_SESSION['$v_desc']= addslashes($_POST["description"]);
             /*$v_nom_type_doc=addslashes($_POST["type"]);*/
             $_SESSION['$jour']=$_POST["day"];
             $_SESSION['$mois']=$_POST["month"];
             $_SESSION['$annee']=$_POST["year"];
    		 //$chemin= addslashes($_POST["fichier"]);
     
     
     
    		$query = "INSERT INTO document  VALUES ('','$v_titre','$v_keyword','$v_fait_par', '$annee-$mois-$jour', '$v_desc', '1' ,'')";		 
    		$res1 = mysqli_query($link,$query);
     
     
     
    }

  9. #9
    Membre émérite
    Avatar de skeud
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    1 091
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

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

    Informations forums :
    Inscription : Juin 2011
    Messages : 1 091
    Points : 2 724
    Points
    2 724
    Billets dans le blog
    1
    Par défaut
    Pour sa je te renvois vers la faq sur les sessions php, indice: et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $_SESSION["Nomdelavariable"];

  10. #10
    Membre à l'essai
    Inscrit en
    Septembre 2010
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 27
    Points : 14
    Points
    14
    Par défaut
    En tout cas merci pour tes réponses

  11. #11
    Membre émérite
    Avatar de skeud
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    1 091
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

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

    Informations forums :
    Inscription : Juin 2011
    Messages : 1 091
    Points : 2 724
    Points
    2 724
    Billets dans le blog
    1
    Par défaut
    De rien

Discussions similaires

  1. Réponses: 3
    Dernier message: 06/12/2010, 15h59
  2. Réponses: 5
    Dernier message: 26/12/2007, 10h51
  3. Réponses: 15
    Dernier message: 04/10/2007, 10h37
  4. Réponses: 1
    Dernier message: 31/07/2006, 13h54
  5. copie d'une table Y d'une base A vers une table X d'une base
    Par moneyboss dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 30/08/2005, 21h24

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