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

PHP & Base de données Discussion :

Décomposer valeurs d'une zone de texte


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Webmarketer
    Inscrit en
    Novembre 2007
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Webmarketer
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Novembre 2007
    Messages : 19
    Par défaut Décomposer valeurs d'une zone de texte
    Bonjour à tous,


    J'essaye de développer un outil qui prend un chiffre au hasard de 1 à 50 pour afficher une valeur saisie par l'utilisateur au hasard dans chaque textarea.


    J'utilise la fonction array_merge pour grouper mes tableaux (textarea) mais je voudrais savoir comment les décomposer une fois qu'ils sont assemblés.

    Je n'arrive pas à grouper mes tableaux en un seul pour l'insérer ligne par ligne dans ma table.


    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
    if (isset($_GET['valid'])) {
        $champ_form1 = $_POST['champ1'];
        $champ_form2 = $_POST['champ2'];
        $champ_form3 = $_POST['champ3'];
        $champ_form4 = $_POST['champ4'];
        // Prise en compte des retours à la ligne dans le textarea
        $champ_formulaire1 = explode("\n",$champ_form1);
        $champ_formulaire2 = explode("\n",$champ_form2);
        $champ_formulaire3 = explode("\n",$champ_form3);
     $champ_formulaire4 = explode("\n",$champ_form4);
     
     $array3 = array_merge($champ_formulaire1, $champ_formulaire2, $champ_formulaire3, $champ_formulaire4);
     
     foreach ($array3 as $value) {
     
     $req="INSERT INTO description(id_description, texte1_description, texte2_description, texte3_description, texte4_description, id_site) Values('','$value','$value','$value','$value','$site')";
     mysql_query($req) or die(mysql_error()); 
     }
     }

    Merci pour votre aide,

    José

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Bonjour,

    Je ne comprends pas bien ce que tu veux faire : l'utilisateur saisie un texte (donc a priori un nombre de lignes variables) dans 4 champs.

    Que veux-tu inserer dans la base par rapport a ces 4 champs ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre émérite Avatar de cadoudal56
    Profil pro
    Inscrit en
    Février 2005
    Messages
    694
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2005
    Messages : 694
    Par défaut
    Hello,

    D'apres ce que je comprends, il a 4 textareas dans lequel les utilisateurs entre des trucs.

    Il voudrait grouper les 4 champs en un seul pour coller cela dans une seule colonne de sa BDD....
    Seulement il veut ensuite etre sur de pouvoir les dégrouper pour retrouver leur état premier....

    Le meilleur moyen c'est de les séparer avec des caracteres assez inattendu...
    Par exemple :: ou alors ||

    Pour grouper :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    if (isset($_GET['valid'])) {
        $champ_form1 = $_POST['champ1'];
        $champ_form2 = $_POST['champ2'];
        $champ_form3 = $_POST['champ3'];
        $champ_form4 = $_POST['champ4'];
     
    $champ_form = $champ_form1.'::'.$champ_form2.'::'.$champ_form3.'::'.$champ_form4;
    }
    Pour dissocier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $contents = split("::", $champ_form);
    @+
    cadou

  4. #4
    Membre averti
    Profil pro
    Webmarketer
    Inscrit en
    Novembre 2007
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Webmarketer
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Novembre 2007
    Messages : 19
    Par défaut
    Merci pour vos réponses, je vais essayer de m'expliquer plus clairement.
    J'ai une table "description" qui est composé de 4 champs : id_description, texte1_description, texte2_description, texte3_description, texte4_description et id_site.

    L'utilisateur saisit x mots dans 4 textarea exactement et valide le formulaire.

    Ce que je souhaite, c'est récupérer ces valeurs sous forme de tableau (c'est déjà fait) et mon problème vient de l'insertion des données dans ma table.

    J'ai un décalage lors de l'insertion des données dans ma table sql.

    Exemple :
    Trois lignes distincts pour titre 1, titre 2, titre 3, c'est ce que je veux.
    Et en dessous trois autre ligne pour description 1, description 2, description 3.

    Je voudrais qu'il n'y ai pas de décalage lors de l'insertion.

    4 champs en un seul pour coller cela dans une seule colonne de sa BDD


    Textarea1

    ligne1.1
    ligne1.2
    ligne1.3
    ligne1.4

    Textarea2

    ligne2.1
    ligne2.2
    ligne2.3
    ligne2.4

    ...

    Le résultat que je souhaiterais insérer dans ma base de données serait de ce type :
    ligne1.1, ligne2.1, ligne3.1, ligne4.1

Discussions similaires

  1. Réponses: 12
    Dernier message: 28/02/2006, 09h36
  2. Convertir une valeur d'une zone de texte en date
    Par os_rasta dans le forum ASP
    Réponses: 17
    Dernier message: 27/02/2006, 15h56
  3. Réponses: 40
    Dernier message: 24/02/2006, 14h19
  4. Réponses: 1
    Dernier message: 02/12/2005, 05h18
  5. Réponses: 6
    Dernier message: 30/09/2005, 16h24

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