Pb: Tableau dynamique avec zones de saisies

sensei -  
Alain_42 Messages postés 5413 Statut Membre -
Bonjour à tous,

Voila, j'aimerai savoir comment creer un tableau dymanique (dont le nB de ligne varie selon la requete) ayant a la fin de chaque ligne (chaque enregistrement) un zone de saisie exploitable pour une insertion dans la base de donnéé.

Ex:

| nom.....................| Nb exemplaire vendu
_________________________________
| Devil May Cry..........| (zone de saisie)
_________________________________
| Assassin's Creed.......|(zone de saisie)
_________________________________
enregistrement suivant.| ...

[Enregistrer] [Annuler]

Merci
Configuration: Windows XP
Firefox 2.0.0.11

5 réponses

  1. Alain_42 Messages postés 5413 Statut Membre 904
     
    Essayes ça:

    <html>
    <?php
    mysql_connect("host","login","pass") or die ("Pb connexion serveur ".mysql_error()); //tu remplaces par tes codes
    mysql_select_db("ta_base")or die ("Pb selection base ".mysql_error());
    $req="SELECT * FROM ta_table";
    $reponse=mysql_query($req) or die ("Pb requette ".mysql_error());
    mysql_close();
    ?>
    <form name="ma_form" method="post" action="script_a_appeler.php">
    <table border="1">
    <tr><th>Nom</th><th>Nbr exempl vendus</th></tr>
    <?php 
    	while($donnees=mysql_fetch_array($reponse)){
    		//on va remplir le tableau  TU REMPLACES champ_nom par le nom exact du champ de ta table correspondant au champ contenant les noms
    		// et il te faut si tu peux modifier ta table avoir un champ id (INT auto increment Primary Key)
    		echo "<tr><td>$donnees['champ_nom']</td><td><input type=\"text\" name=\"$donnees['id']\" value=\"\"></td></tr>";
    	}
    ?>
    <input type="submit" name="enregistrer" value="Enregistrer">
    </table>
    </form>
    </html>
    
    1
  2. phil_232 Messages postés 286 Statut Membre 33
     
    et ce serait dans quel langage ?
    0
  3. sensei
     
    En php pardon ,j'ai oublié de le dire.
    0
  4. sensei
     
    J'ai essayé de faire comme ca mais comment faire pour les recupérer ou simple les afficher dans la page vers laquelle on envoi ?

    cible.php

    $req="select id from table ;
    $result=mysql_query($req) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
    while ($ligne1=mysql_fetch_object($result))
    {
    $noid=$ligne1->id;
    echo $_POST['noid']; //affiche la varaible POST ayant pour nom le numero d'id

    }

    A savoir ce code ne marche pas...
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Alain_42 Messages postés 5413 Statut Membre 904
     
    Moi je ne connais pas trop avec la methode objet

    mais dans le fichier cible tu peux récupérer par une boucle:

    <?php
    if(isset(['enregistrer']){ //si le fromulaire a été posté
    	// connexion à la base
    	mysql_connect("host","login","pass") or die ("Pb connexion serveur ".mysql_error()); //tu remplaces par tes codes
    	mysql_select_db("ta_base")or die ("Pb selection base ".mysql_error());
    	//on parcours l'array $_POST
    	$n=0;
    	foreach($_POST as $champ=>$value){
    		if($champ != 'enregistrer'){// on élimine le post du bouton
    			echo "Valeur du champ ayant pour id ".$champ." : ".$value."<br>";// visualaistion
    			//et pour le rentrer dans la BDD
    			$req="UPDATE ta_table SET champ_quantite='".$value."' WHERE id='".$champ."'";
    			$reponse=mysql_query($req) or die ("Pb requette ".mysql_error());
    			if($reponse) $n++;  //si ça a marché on incrémente le compteur
    		}
    	
    	}
    
    mysql_close();
    
    	if($n>0){
    		echo "<b>$n</b> enregistrements ont &eacute;t&eacute; faits dans la base !";
    	}else{
    		echo "Aucun enregistrement fait dans la base !";
    	}
    }
    
    ?>
    
    0