Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/04/2011, 11h08   #1
Invité de passage
 
Homme Mathieu
Etudiant en Informatique
Inscription : avril 2011
Messages : 23
Détails du profil
Informations personnelles :
Nom : Homme Mathieu
Localisation : France

Informations professionnelles :
Activité : Etudiant en Informatique

Informations forums :
Inscription : avril 2011
Messages : 23
Points : 0
Points : 0
Par défaut Insérer ligne identique dans une <table>

Bonjour,

J'ai un petit soucis, j'ai ici une table contenant divers renseignements concernant des lots de composants, je remplis mon tableau à l'aide de mysql.

Puis je voudrais avoir un bouton + qui permettrai de rajouter les même ligne mais vide. L'utilisateur pourra ainsi scanné le lot et celui-ci sera insérer directement dans l'input de type text.
Code :
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
 
<table border="1"; id=matable  width= "382"; name="liste" >
   <tr>
       <th>Description</th>
       <th>N° Lot</th>
       <th>Quantité</th>
	   <th>  </th>
   </tr>
 
 
<?php 
$connect_db = connect(); 
$req=mysql_query("SELECT lot.* FROM lot JOIN production ON production.Lot = lot.numero where production.OF='F100601369';");
$count=0;
$i = 0; 
while($p=mysql_fetch_assoc($req))
{
    $couleurs = array('#9E9E9E', '#1E80CC '); 
    $nombre = count($couleurs); 
 
        echo '<tr style="background-color : ' . $couleurs[ $i % $nombre] . '"> 
                    <td>'.$p['description'].'</td>
                     <td>'.$p['numero'].'</td>
                    <td>'.$p['Quantité'].'</td>
<td> <input type=checkbox name=check'.$i.' onClick="changecolor(this,\''.$i.'\');" /> Validé </td>
					<td> <input type=button onClick="Manquant('.$i.',this);" value="Manquant" />
						 <input type=button onClick="Annuler('.$i.',this);" value="Annuler" />
						 <input type=button value="+" onClick="???????" />
						 </td>
              </tr>'; 
        $i++; 
	}
    $connect_db = close();
    ?>   
</table>
Utiliser le javascript ou le PHP ? Sachant que la table s'affiche avec 1 ligne sur deux d'une couleur différente. Et comment avoir la ligne identique avec les mêmes boutons ?

Merci de votre aide.
Si plus d'explications, demandez moi
NoxWeed est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/04/2011, 12h17   #2
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 984
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 984
Points : 5 016
Points : 5 016
Tu devrais faire ça avec JavaScript, ça n'a aucun sens de recharger la page et rééxécuter la requête de selection... Regarde du coté d'Ajax et jQuery sur le forum JavaScript pour en savoir plus.

Citation:
Sachant que la table s'affiche avec 1 ligne sur deux d'une couleur différente
JavaScript sait le faire également, regarde du coté de TableSorter 2.0

Au passage, tu peux utiliser la balise [code] ici.

Quelques points:
Code :
<table border="1"; id=matable width= "382"; name="liste" >
A quoi servennt les ; ? pourquoi n'y a t'il pas de double quotes autours de chaque attribut ?

Code :
$req=mysql_query("SELECT lot.* FROM lot JOIN production ON production.Lot = lot.numero where production.OF='F100601369';");
Et si ça échoue qu'est ce qu'il se passe ?

Ce bloc:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
while($p=mysql_fetch_assoc($req))
{
$couleurs = array('#9E9E9E', '#1E80CC ');
$nombre = count($couleurs);
 
echo '<tr style="background-color : ' . $couleurs[ $i % $nombre] . '">
<td>'.$p['description'].'</td>
<td>'.$p['numero'].'</td>
<td>'.$p['Quantité'].'</td>
<td> <input type=checkbox name=check'.$i.' onClick="changecolor(this,\''.$i.'\');" /> Validé </td>
<td> <input type=button onClick="Manquant('.$i.',this);" value="Manquant" />
<input type=button onClick="Annuler('.$i.',this);" value="Annuler" />
<input type=button value="+" onClick="???????" />
</td>
</tr>';
$i++;
}
Peut être avantageusement remplacé par une syntaxe plus esthétique:
Code :
1
2
3
4
5
6
 
<?php while($p=mysql_fetch_assoc($req)): ?>
<tr>
  <td><?=$p['description']?></td>
  ...
<?php endwhile ?>
Tu as mis:
Code :
1
2
3
4
5
6
<tr>
<th>Description</th>
<th>N° Lot</th>
<th>Quantité</th>
<th> </th>
</tr>
Ce tr devrait se trouver dans un thead et ses enfants td devraient êtres th.
Code :
1
2
3
4
5
6
7
8
9
10
11
12
 
<table>
 <thead>
  <tr>
   <th>A</th>
  </tr>
 </thead>
 <tfoot>
 </tfoot>
 <tbody>
 </tbody>
</table>
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/04/2011, 13h31   #3
Invité de passage
 
Homme Mathieu
Etudiant en Informatique
Inscription : avril 2011
Messages : 23
Détails du profil
Informations personnelles :
Nom : Homme Mathieu
Localisation : France

Informations professionnelles :
Activité : Etudiant en Informatique

Informations forums :
Inscription : avril 2011
Messages : 23
Points : 0
Points : 0
Merci pour cette réponse. Cela m'est d'une grande aide.

Désolé pour le code, je me suis posé la question et je ne connaissais pas la balise [code]. Maintenant je le saurais.

Ce forum est très bien, j'ai toujours une réponse dans les plus bref délais.
Si j'ai encore un soucis de développement je viendrais ici

Merci.
NoxWeed est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/04/2011, 13h56   #4
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 984
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 984
Points : 5 016
Points : 5 016
Citation:
Ce forum est très bien, j'ai toujours une réponse dans les plus bref délais.
C'est l'idée
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/04/2011, 15h32   #5
Invité de passage
 
Homme Mathieu
Etudiant en Informatique
Inscription : avril 2011
Messages : 23
Détails du profil
Informations personnelles :
Nom : Homme Mathieu
Localisation : France

Informations professionnelles :
Activité : Etudiant en Informatique

Informations forums :
Inscription : avril 2011
Messages : 23
Points : 0
Points : 0
J'aurais voulu savoir d'après le code au dessus, et d'après ce morceau de code, on s'interesse à l'OF :

Code :
1
2
3
4
5
6
7
8
 <table border ="1" style="background-color:#EDEDED">
 
	<tr><td>Utilisateur : </td><td><input type=text /></td><td></td></tr>
	<tr><td>Ress </td><td><input type=text /></td><td></td></tr>
	<tr><td >OF</td><td><input type=text id=OF /></td><td><input type=text /></td></tr>
	<tr><td></td></tr><td></td><td></td><td><input type=text /></td>
	<tr><td >OP</td><td><input type=text /></td><td></td></tr>
</table>
Code :
 $req=mysql_query("SELECT lot.* FROM lot JOIN production ON production.Lot = lot.numero where production.OF='F100601369';");

Ici le numéro d'OF est inscrit à la main, cependant plus tard ce numéro d'OF sera récupérer dans la <table> à l'aide d'une douchette code-barre.

Comment récupérer la valeur qui sera inscrit où l'id est OF sachant que ce n'est pas un formulaire et il n'y a pas de submit. Est-il possible lors du scan du code-barre que l'OF s'insere directement dans le <input> et on récupère directement sa valeur pour aller voir dans la base de donnée.

Merci.
NoxWeed est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/04/2011, 15h47   #6
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 984
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 984
Points : 5 016
Points : 5 016
J'ai pas déjà répondu à un de tes threads par hasard ? C'est pas toi qui cherchais une solution pour un mécanisme de suivi des pièces et lots sur une chaine de montage ??

Citation:
Est-il possible lors du scan du code-barre que l'OF s'insere directement dans le <input> et on récupère directement sa valeur pour aller voir dans la base de donnée.
Je ne vois même pas comment tu comptes t'y prendre. A mon avis tu aurais dû faire ton IHM en Java ou en .Net avec des winforms, là avec PHP tu va t'en voir pour faire ça et ce sera pourri.

Le problème est que PHP n'est pas vraiment interactif avec l'utilisateur, tu ne peux pas décider coté serveur de rafraichir la page du client avec de nouvelles données. Cela vient du fait que PHP n'est exécuté que dans le cadre d'une requête HTTP, une fois la requête servie en totalité, PHP s'arrête. En revanche, avec Ajax, tu peux pooler un service web PHP pour obtenir des mises à jour et donc émuler cette notion évènementielle.

-- Edit

Ah mais si, j'ai trouvé: http://www.developpez.net/forums/d10...roduction-php/
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h17.


 
 
 
 
Partenaires

Hébergement Web