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 :

[SQL] Ajout d'un champs text +1, +2, +3..


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de oceane751
    Profil pro
    Intégrateur Web
    Inscrit en
    Novembre 2004
    Messages
    1 280
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 280
    Par défaut [SQL] Ajout d'un champs text +1, +2, +3..
    bonjour à tous!!

    j'aimerais ajouter un nombre de champs par exemple j'ai un champs "caracteristiques" et j'aimerais en ajouter un 2eme et eventuellement d'autres
    j'ai fait un bout de code mais ça ne marche pas beaucoup :
    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
     
    <?
     
    if (isset ($_POST['chp']))
    {
      $nombre = $_POST['nombre'];
     // echo $_POST['chp'];
     for ($i = 0; $i< $nombre; $i++)
     {
     
      echo "<table>
      <tr>
      <td>
      Nom caracteristique<input type = text name = champ>
      </td>
      <td>Descriptif<textarea name = descriptif></textarea></td>
      </tr>
      </table> ";
    }
    }
     
     
    echo "<table>";
    echo "<form method = post action = 'ajoutchamps.php'";
     
    echo"<tr>
    <td>";
    echo "Nom caracteristique<input type = text name = champ></td>
    <td>Descriptif<textarea name = descriptif></textarea></td>
    </tr>
    <tr>
    <td><input typ = text  name = nombre size = 1>
    <input type = submit name = chp value = ajouter>";
    echo "</td></tr>
    
    </form>
    </table>";
    ?>
    si je veux en rajouter 2, ça marche j'en ais bien 3 (le 1er + les 2 ajoutés)

    par contre si j'en rajoute 3, ça ne m'en rajoute qu'un seul soit au total 4 (le 1er + les 2 ajoutés + le 4eme) au lieu de 6 (les 3 ajoutés precedement + les 3 ajoutés)

    donc si quelqu'un pourrait m'aider à rajouter le nombre voulu de champs, ce serait vraiment sympas...

  2. #2
    Membre émérite

    Profil pro
    H4X0|2 @ YourLabs Business Service
    Inscrit en
    Octobre 2006
    Messages
    657
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : H4X0|2 @ YourLabs Business Service
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2006
    Messages : 657
    Par défaut
    Le HTML n'est pas valide. On l'utilise de telle façon :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <balise parametre="valeur"></balise>
    Il est nécéssaire de produire un tel code.

    Sinon, essayer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $nombre = (int)$_POST['nombre']
    ou encore
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $nombre = intval($_POST['nombre'])

  3. #3
    Membre éprouvé Avatar de oceane751
    Profil pro
    Intégrateur Web
    Inscrit en
    Novembre 2004
    Messages
    1 280
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 280
    Par défaut
    je ne vois pas trop ce que le html vient faire dans mon problème mais bon emrci quand meme pour ta réponse

  4. #4
    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,

    Ce n'est pas bien compliqué...
    En fait tu voudrais que en rentrant le nombre 3, il te rajoute 3 champs a ceux qui existe déja...
    Par contre tu va avoir un probleme car tout tes champs s'appelle de la meme facon.... De plus tu as quelques erreurs dans ton code html. Il faut s'avoir que des erreurs a ce niveau peuvent empecher l'affichage et donc faire croire que le code est mauvais

    Donc voici ce que je te propose :

    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
     
    <?
     
    if (isset ($_POST['chp'])) // Si chp a été cliqué
    {
    $count = $_POST['count']; //le nombre de champ existant
    $nombre = $_POST['nombre']; //le nombre de champ a ajouter
     
     
     for ($x = 0; $x< ($nombre+$count); $x++)
     {
     
      echo '<table>
      <tr>
      <td>
      Nom caracteristique<input type="text" name="champ'.$x.'">
      </td>
      <td>Descriptif<textarea name="descriptif.'$x.'"></textarea></td>
      </tr>
      </table> ';
    }
    }
     
     
    echo '<table>';
    echo '<form method="post" action="ajoutchamps.php"';
     
    echo '<tr><td>';
    echo 'Nom caracteristique : <input type="text" name="champ"></td>
    <td>Descriptif<textarea name="descriptif"></textarea></td>
    </tr>
    <tr>
    <td><input type="text"  name="nombre" size="1">
    <input type="hidden"  name="count" value="'.($count+$nombre).'">
    <input type="submit" name="chp" value="ajouter>"';
    echo '</td></tr> 
    </form>
    </table>';
    ?>
    Comme tu peux le voir, j'ai juste rajouter une variable count qui passe le nombre de caractéristiques déja demandé.

    @+
    cadou
    PS : Dis moi si cela a fonctionner...

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 41
    Par défaut
    +1 mais c'est pas comme ca qu'il va faire des progrès en algorithmie...

  6. #6
    Membre éprouvé Avatar de oceane751
    Profil pro
    Intégrateur Web
    Inscrit en
    Novembre 2004
    Messages
    1 280
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 280
    Par défaut
    merci pour ta réponse cacoudal
    le code marche mais ya une erreur mais ça marche

    j'ai mis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if (isset ($_POST['chp']))
      {
     
    echo '<input type="hidden"  name="count" value="'.$jj.'"> ';
      }
    j'ai mis $jj = $count + $nombre;
    mais toujours erreur :
    Notice: Undefined index: count in c:\program files
    ICI (en debut de code)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if (isset ($_POST['chp'])) // Si chp a été cliqué
    {
      ==>  $count = $_POST['count']; <==
    ....

Discussions similaires

  1. Proc sql et taille du champ texte
    Par ion_ion dans le forum SAS Base
    Réponses: 2
    Dernier message: 07/12/2012, 14h21
  2. [Doctrine] Ajout d'un champ texte dans un formulaire crée par Doctrine
    Par Malonix dans le forum PHP & Base de données
    Réponses: 0
    Dernier message: 30/03/2009, 11h53
  3. ajout dans un champ text
    Par martoune dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 08/08/2007, 17h16
  4. 8i : sql loader et champ texte sur plusieurs lignes
    Par naonedboy dans le forum SQL*Loader
    Réponses: 1
    Dernier message: 23/11/2005, 10h07
  5. SQL champ texte UNIQUE insensible à la casse
    Par Mike@Nestor dans le forum Langage SQL
    Réponses: 8
    Dernier message: 17/10/2005, 08h31

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