Précédent   Forum des professionnels en informatique > PHP > Langage > Débuter
Débuter Forum d'entraide pour débuter en PHP. Avant de poster -> Cours PHP, FAQ PHP, Outils PHP, etc.
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 29/12/2011, 08h39   #1
Invité de passage
 
Inscription : avril 2009
Messages : 42
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 42
Points : 3
Points : 3
Par défaut Liste de boutons

Bonjour ,


Je voudrais faire une liste avec un nombre de lignes variables (donc il faudra une barre de défilement verticale) ; dans chaque ligne je voudrais mettre plusieurs boutons correspondant à des actions à effectuer (supprimer, modifier ..) ne concernant que cette ligne. Je ne vois pas du tout comment faire ça.
Pouvez vous m'aider ?

Merci
pandu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2011, 09h44   #2
Membre éclairé
 
Homme
Développeur Sharepoint/Biztalk
Inscription : octobre 2008
Messages : 503
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Pyrénées Atlantiques (Aquitaine)

Informations professionnelles :
Activité : Développeur Sharepoint/Biztalk

Informations forums :
Inscription : octobre 2008
Messages : 503
Points : 399
Points : 399
Si j'ai bien compris le soucis. tu veux que chaque ligne soit spécifique.

Pour cela, je créerais une div de dimensions x et y.
Code :
1
2
3
4
5
6
#div
{
width: 800px;
height: 500px;
overflow:scroll; // pour la barre de défilement
}
Dans cette div, une boucle en PHP pour tes x lignes :
Code :
1
2
3
4
5
6
7
8
9
10
11
 
<div id="div">
<?php
echo"<ul>";
for($i=0;$i<$nbr_elts;$i++)
{
   echo"<li><a href=\"page_traitement.php?id=$i\"><img src=\"lien_img_bouton\"></a></li>";
}
echo"</ul>";
?>
</div>
Comme tu le vois, je passe un paramètre id qui correspond à la ligne en cours. Ainsi dans ta page de traitement, tu peux récupérer à l'aide d'un GET, les informations d'une ligne spécifique.

Après il faut voir si tu obtiens tes résultats d'une base de donnée ou pas. Ainsi en paramètre id dans le <a href>, tu peux passer la clé primaire de ta base de données.

Si tu comprend pas trop, hésite pas à demander
bob633 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/12/2011, 21h59   #3
Invité de passage
 
Inscription : avril 2009
Messages : 42
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 42
Points : 3
Points : 3
Merci pour la réponse !

overflow:scroll; // pour la barre de défilement

je ne connaissais pas merci, ça marche bien sauf que ça me met aussi une barre de défilement horizontale dont je me passerais bien

Sinon je comprends bien le passage de parametre de cette façon mais j'ai 3 questions :
- Comment on fait pour passer 2 parametres par exemple ?
- Peut on passer tout type de paramètres ?
- Quelle est la syntaxe du $_GET pour récupérer dans le prog appelé ?

En fait pour passer un parametre je le mets comme name du bouton et je récupère par POST. Mais bon, j'apprends tout seul donc je dois faire des trucs assez délirants

Le fait d'afficher une image dans la ligne crée un problème aussi. l'image n'est pas à la même hauteur que le reste de la ligne, elle est carrément à la ligne dessous, c bizarre.

Je ne vois pas l'intérêt des UL et des LI, en fait ça marche bien sans. Pourquoi il faut mettre ça ?

merci et bonne année
pandu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/01/2012, 10h49   #4
Débutant
 
Homme Laurent
Webmaster
Inscription : octobre 2006
Messages : 2 873
Détails du profil
Informations personnelles :
Nom : Homme Laurent
Âge : 48
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : Webmaster
Secteur : Industrie

Informations forums :
Inscription : octobre 2006
Messages : 2 873
Points : 1 320
Points : 1 320
Je réponds à une partie de tes questions :
Citation:
Comment on fait pour passer 2 parametres par exemple ?
href=\"page_traitement.php?id=$i&&par2=$toto Donc pour passer plusieurs paramètres, tu les "concatènes" avec &&.

Citation:
Quelle est la syntaxe du $_GET pour récupérer dans le prog appelé ?
$id_transmis=$_GET['id'] L'important est de mettre dans le tableau $_GET le nom de la variable que tu avais mis dans la page appelante (ici "id", et entre quotes (')).

Citation:
Peut on passer tout type de paramètres ?
Je ne connais pas de limitation.

Citation:
Je ne vois pas l'intérêt des UL et des LI, en fait ça marche bien sans. Pourquoi il faut mettre ça ?
Pour faire plus propre.

Bonne année aussi
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
laurentSc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/01/2012, 09h21   #5
Membre éclairé
 
Homme
Développeur Sharepoint/Biztalk
Inscription : octobre 2008
Messages : 503
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Pyrénées Atlantiques (Aquitaine)

Informations professionnelles :
Activité : Développeur Sharepoint/Biztalk

Informations forums :
Inscription : octobre 2008
Messages : 503
Points : 399
Points : 399
Et pour la dernière question sur le scroll horizontal, tu peux le supprimer avec
bob633 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/01/2012, 09h29   #6
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 808
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

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

Informations forums :
Inscription : juin 2008
Messages : 13 808
Points : 35 787
Points : 35 787
Citation:
Envoyé par laurentSc
passer plusieurs paramètres, tu les "concatènes" avec &&.


Pourquoi doubler le & ???

Citation:
Envoyé par laurentSc
Citation:
Peut on passer tout type de paramètres ?
Je ne connais pas de limitation.


Tu veux dire en dehors du fait que tu ne peux passer que des types chaines de caractère ?
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/01/2012, 10h12   #7
Débutant
 
Homme Laurent
Webmaster
Inscription : octobre 2006
Messages : 2 873
Détails du profil
Informations personnelles :
Nom : Homme Laurent
Âge : 48
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : Webmaster
Secteur : Industrie

Informations forums :
Inscription : octobre 2006
Messages : 2 873
Points : 1 320
Points : 1 320
Citation:
Pourquoi doubler le & ???
C'est à cause de Parkinson (et car de mémoire, je me suis trompé).

Citation:
Tu veux dire en dehors du fait que tu ne peux passer que des types chaines de caractère ?
Mais moi, je ne fais jamais attention au type de la variable et je passe autre chose que des strings...
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
laurentSc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2012, 14h20   #8
Invité de passage
 
Inscription : avril 2009
Messages : 42
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 42
Points : 3
Points : 3
Citation:
Envoyé par Bovino Voir le message


Pourquoi doubler le & ???





Tu veux dire en dehors du fait que tu ne peux passer que des types chaines de caractère ?
Heu ... je passe un entier et ça marche très bien
pandu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2012, 14h32   #9
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 808
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

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

Informations forums :
Inscription : juin 2008
Messages : 13 808
Points : 35 787
Points : 35 787
Citation:
Envoyé par laurentSc
Mais moi, je ne fais jamais attention au type de la variable et je passe autre chose que des strings...
En paramètre GET ? Je serais curieux de voir ça...
Citation:
Envoyé par pandu
Heu ... je passe un entier et ça marche très bien
Oui, parce que PHP est capable de transtyper dynamiquement les nombres, mais il n'en reste pas moins vrai que les paramètres GET transitent via le protocole HTTP qui est sans état et ne reconnait pas les types, ce sont donc toujours des chaines qui sont transmises !
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2012, 18h47   #10
Débutant
 
Homme Laurent
Webmaster
Inscription : octobre 2006
Messages : 2 873
Détails du profil
Informations personnelles :
Nom : Homme Laurent
Âge : 48
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : Webmaster
Secteur : Industrie

Informations forums :
Inscription : octobre 2006
Messages : 2 873
Points : 1 320
Points : 1 320
Citation:
En paramètre GET ? Je serais curieux de voir ça...
pour satisfaire ta curiosité
test_bovino.php :
Code :
1
2
3
4
5
<?php
$entier=5;
$flottant=5.5;
echo '<a href="passer_entier.php?entier='.$entier.'&flottant='.$flottant.'">passer entier et flottant</a>';
?>
passer_entier.php :
Code :
1
2
<?php 
echo "entier=".$_GET['entier']."<br>flottant=".$_GET['flottant'];?>
Citation:
mais il n'en reste pas moins vrai que les paramètres GET transitent via le protocole HTTP qui est sans état et ne reconnait pas les types, ce sont donc toujours des chaines qui sont transmises !
Peut-être, mais le codeur transmet bien une variable de n'importe quel type.
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
laurentSc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2012, 18h56   #11
Modérateur
 
Inscription : septembre 2010
Messages : 7 219
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 219
Points : 8 598
Points : 8 598
Citation:
Envoyé par laurentSc Voir le message
pour satisfaire ta curiosité
test_bovino.php :
Code :
1
2
3
4
5
<?php
$entier=5;
$flottant=5.5;
echo '<a href="passer_entier.php?entier='.$entier.'&flottant='.$flottant.'">passer entier et flottant</a>';
?>
passer_entier.php :
Code :
1
2
<?php 
echo "entier=".$_GET['entier']."<br>flottant=".$_GET['flottant'];?>
Peut-être, mais le codeur transmet bien une variable de n'importe quel type.
et non,
fait un var_dump($_GET); tu verras que c'est en string
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 03/01/2012, 19h03   #12
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 808
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

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

Informations forums :
Inscription : juin 2008
Messages : 13 808
Points : 35 787
Points : 35 787
Citation:
Envoyé par laurentSc
Peut-être, mais le codeur transmet bien une variable de n'importe quel type.


Avec un vrai test, tu te rendras compte que non
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
if(isset($_GET['param'])){
	var_dump($_GET['param']);
}
$nb = 123;
$st = 'abc';
$tab = array(1,2,3);
?>
<!doctype html>
<html lang="fr">
<head>
	<meta charset="utf-8" />
	<title>Types</title>
</head>
<body>
	<p><a href="?param=<?php echo $nb; ?>">Passer un nombre</a></p>
	<p><a href="?param=<?php echo $st; ?>">Passer une chaine</a></p>
	<p><a href="?param=<?php echo $tab; ?>">Passer un tableau</a></p>
</body>
</html>
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2012, 19h23   #13
Débutant
 
Homme Laurent
Webmaster
Inscription : octobre 2006
Messages : 2 873
Détails du profil
Informations personnelles :
Nom : Homme Laurent
Âge : 48
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : Webmaster
Secteur : Industrie

Informations forums :
Inscription : octobre 2006
Messages : 2 873
Points : 1 320
Points : 1 320
En fait, je crois qu'on a tous raison :techniquement, c'est bien une string, mais on peut quand même transmettre tout type de variable (et avant, je ne savais pas que la variable transmise était de type string, et ça marchait quand même...)
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
laurentSc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2012, 19h42   #14
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 808
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

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

Informations forums :
Inscription : juin 2008
Messages : 13 808
Points : 35 787
Points : 35 787
Citation:
Envoyé par laurentSc
En fait, je crois qu'on a tous raison
Mouais... Si ça te fais plaisir de le croire...
Citation:
Envoyé par laurentSc
mais on peut quand même transmettre tout type de variable
Tu es sûr d'avoir bien exploité l'exemple que j'ai donné ?
Je pense notamment au 3e lien
Les nombres et les chaines ne sont pas (heureusement) les seuls types de variables...
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2012, 21h08   #15
Débutant
 
Homme Laurent
Webmaster
Inscription : octobre 2006
Messages : 2 873
Détails du profil
Informations personnelles :
Nom : Homme Laurent
Âge : 48
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : Webmaster
Secteur : Industrie

Informations forums :
Inscription : octobre 2006
Messages : 2 873
Points : 1 320
Points : 1 320
Citation:
Je pense notamment au 3e lien
Là OK, il faut passer par une string avec implode ou serialize.

et on peut passer un "array" :
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
<?php 
if(isset($_GET['param'])){
   {
   if ($_GET['cas']<3)
	   var_dump($_GET['param']);
   else var_dump(explode(',',$_GET['param']));
   }	
}
$nb = 123;
$st = 'abc';
$tab = array(1,2,3);
?>
<!doctype html>
<html lang="fr">
<head>
	<meta charset="utf-8" />
	<title>Types</title>
</head>
<body>
	<p><a href="?param=<?php echo $nb; ?>&cas=1">Passer un nombre</a></p>
	<p><a href="?param=<?php echo $st; ?>&cas=2">Passer une chaine</a></p>
	<p><a href="?param=<?php echo implode($tab); ?>&cas=3">Passer un tableau</a></p>
 
</body>
</html>
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
laurentSc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2012, 21h33   #16
Modérateur
 
Inscription : septembre 2010
Messages : 7 219
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 219
Points : 8 598
Points : 8 598
Citation:
Envoyé par laurentSc Voir le message
Là OK, il faut passer par une string avec implode ou serialize.

et on peut passer un "array" :
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
<?php 
if(isset($_GET['param'])){
   {
   if ($_GET['cas']<3)
	   var_dump($_GET['param']);
   else var_dump(explode(',',$_GET['param']));
   }	
}
$nb = 123;
$st = 'abc';
$tab = array(1,2,3);
?>
<!doctype html>
<html lang="fr">
<head>
	<meta charset="utf-8" />
	<title>Types</title>
</head>
<body>
	<p><a href="?param=<?php echo $nb; ?>&cas=1">Passer un nombre</a></p>
	<p><a href="?param=<?php echo $st; ?>&cas=2">Passer une chaine</a></p>
	<p><a href="?param=<?php echo implode($tab); ?>&cas=3">Passer un tableau</a></p>
 
</body>
</html>
non faut utiliser http_build_query pour passer un array (et avoir le vrai rendu HTTP)
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2012, 13h30   #17
Invité de passage
 
Inscription : avril 2009
Messages : 42
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 42
Points : 3
Points : 3
Bon bref pour revenir à mes petits soucis de débutants :

Code :
1
2
3
4
5
6
7
8
9
#encours
{
width: 966px;
height: 200px;
overflow:scroll; // pour la barre de défilement
overflow-x:hidden;
  font-size: 8;
font-weight: lighter;
}
Le : overflow-x:hidden; ne marche pas. Qqun sait pourquoi ?

Merci
pandu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2012, 15h28   #18
Débutant
 
Homme Laurent
Webmaster
Inscription : octobre 2006
Messages : 2 873
Détails du profil
Informations personnelles :
Nom : Homme Laurent
Âge : 48
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : Webmaster
Secteur : Industrie

Informations forums :
Inscription : octobre 2006
Messages : 2 873
Points : 1 320
Points : 1 320
J'ai testé : ça marche sous FF mais pas sous IE.
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
laurentSc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2012, 16h14   #19
Membre expérimenté
 
Avatar de Torgar
 
Homme Jérémy
Développeur Web
Inscription : août 2007
Messages : 326
Détails du profil
Informations personnelles :
Nom : Homme Jérémy
Âge : 26
Localisation : France, Gard (Languedoc Roussillon)

Informations professionnelles :
Activité : Développeur Web
Secteur : Industrie

Informations forums :
Inscription : août 2007
Messages : 326
Points : 535
Points : 535
Envoyer un message via MSN à Torgar Envoyer un message via Skype™ à Torgar
Citation:
Envoyé par pandu Voir le message
Bon bref pour revenir à mes petits soucis de débutants :

Code :
1
2
3
4
5
6
7
8
9
#encours
{
width: 966px;
height: 200px;
overflow:scroll; // pour la barre de défilement
overflow-x:hidden;
  font-size: 8;
font-weight: lighter;
}
Le : overflow-x:hidden; ne marche pas. Qqun sait pourquoi ?

Merci
Essaye de mettre un overflow: auto; plutôt que scroll.

Sinon revoies tes dimensions de l'élément encours. Peut-être que 966px est trop petit.
__________________
Vivez vos rêves !!!

Si vous voulez que l'on vous aide, postez votre code avec la balise [ CODE ] [ /CODE ] (bouton # de l'éditeur)
Torgar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/01/2012, 19h51   #20
Invité de passage
 
Inscription : avril 2009
Messages : 42
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 42
Points : 3
Points : 3
Ah ben là je n'ai plus de barres du tout, ça déborde de tous les cotés ^^
pandu est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h04.


 
 
 
 
Partenaires

Hébergement Web