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 12/12/2011, 22h29   #1
Candidat au titre de Membre du Club
 
Inscription : août 2010
Messages : 37
Détails du profil
Informations forums :
Inscription : août 2010
Messages : 37
Points : 12
Points : 12
Par défaut transmission de variables

Bonsoir,
Voià quelques jours que je bute sur le fait de transmettre une variable "tableau" à une page php. Je vous détaille le problème :
Code :
1
2
3
4
5
6
$query = mysql_query("SELECT distinct lib_ag, obj FROM structure as s, objectif as o WHERE s.dga='$indicatif' and s.lib_ag = o.lib_agence") or die (mysql_error());
$lib_agg = array(); 
 while ($array = mysql_fetch_assoc($query)) {
echo "<tr>";
	echo "<td><font face=Arial size=2><strong>";
	echo $array['lib_ag'];echo"</td>";
Mon souci est de récupérer la variable lib_ag qui doit contenir plusieurs données et de les passer et de les lire dans la page suivante.
Auriez-vous une idée ?
Merci
tapi21 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2011, 08h33   #2
Membre éclairé
 
Avatar de Sekigawa
 
Développeur Web
Inscription : mars 2008
Messages : 426
Détails du profil
Informations personnelles :
Âge : 25
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : mars 2008
Messages : 426
Points : 316
Points : 316
Yop !

T'as essayé de faire un var_dump ? Histoire de voir si quelque chose est récupéré ?

++
__________________
Cookie : Anciennement petit gâteau sucré, qu'on acceptait avec plaisir. Aujourd'hui : petit fichier informatique drôlement salé, qu'il faut refuser avec véhémence.
Sekigawa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2011, 12h42   #3
Invité de passage
 
Inscription : décembre 2006
Messages : 3
Détails du profil
Informations personnelles :
Localisation : France, Pyrénées Atlantiques (Aquitaine)

Informations forums :
Inscription : décembre 2006
Messages : 3
Points : 4
Points : 4
Par défaut pourquoi pas ça

Dans ta boucle "while" tu incrémente le "array" que tu as créé :
Code :
1
2
3
4
5
 
<?php
while($res = mysql_fetch_row($query))
array_push($ton_array,$res[1]);
?>
ton "array" contient donc toutes tes valeurs, tu peux le serialiser pour le passer ou tu veux (et encodage base64 pour passer dans url)
Code :
1
2
3
4
5
 
<?php
$chaine = serialize($ton_array);
$chaine = base64_encode($chaine);
?>
pour le récupérer et l'utiliser :
Code :
1
2
3
4
5
6
 
<?php
$tableau = unserialize(base64_decode($chaine));
foreach($tableau as $valeur)
print "$valeur\n";
?>
babconcept est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2011, 15h13   #4
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 991
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 991
Points : 5 031
Points : 5 031
On peut nativement passer un tableau par paramètre (GET ou POST confondus).

Exemple avec GET:
Code :
http://mon.site.com/?arr[]=1&arr[]=2&arr[]=3
Exemple avec un formulaire:
Code :
1
2
3
<input type="text" name="arr[]" />
<input type="text" name="arr[]" />
<input type="text" name="arr[]" />
On peut d'ailleurs nommer les index:
Code :
http://mon.site.com/?arr[a]=1&arr[b]=2&arr[c]=3
Et la profondeur est infinie:
Code :
http://mon.site.com/?arr[a][b][c]=1
Exemple type: un champ de bits avec formulaire:
Code :
1
2
3
4
5
6
7
8
<form>
<input type="checkbox" name="flag[]" value="1" id="flag_1" /><label for="flag_1">Flag 1</label>
<input type="checkbox" name="flag[]" value="2" id="flag_2" /><label for="flag_2">Flag 2</label>
<input type="checkbox" name="flag[]" value="4" id="flag_4" /><label for="flag_4">Flag 4</label>
<input type="checkbox" name="flag[]" value="8" id="flag_8" /><label for="flag_8">Flag 8</label>
<input type="checkbox" name="flag[]" value="16" id="flag_16" /><label for="flag_16">Flag 16</label>
<input type="submit" name="send" value="Ok" />
</form>
Coté PHP, pour construire le bitfield:
Code :
1
2
3
4
$flag = isset($_REQUEST['flag']) ? (array)$_REQUEST['flag'] : array();
$flag = array_sum($flag);
 
if ($flag & 16) etc...
Sinon, comme l'a mentionné babconcept on peut encoder le tableau (serialize ou json_encode font bien l'affaire).
__________________
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 10
Vieux 13/12/2011, 15h17   #5
Membre éclairé
 
Avatar de Sekigawa
 
Développeur Web
Inscription : mars 2008
Messages : 426
Détails du profil
Informations personnelles :
Âge : 25
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : mars 2008
Messages : 426
Points : 316
Points : 316
Citation:
Envoyé par Benjamin Delespierre Voir le message
On peut nativement passer un tableau par paramètre (GET ou POST confondus).
Ah ! Je savais pas ça ! Merci pour l'info
__________________
Cookie : Anciennement petit gâteau sucré, qu'on acceptait avec plaisir. Aujourd'hui : petit fichier informatique drôlement salé, qu'il faut refuser avec véhémence.
Sekigawa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2011, 16h01   #6
Membre Expert
 
Avatar de Doksuri
 
Tiger Scott
Développeur Web
Inscription : juin 2006
Messages : 1 249
Détails du profil
Informations personnelles :
Nom : Tiger Scott
Âge : 42

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : juin 2006
Messages : 1 249
Points : 1 510
Points : 1 510
Citation:
Envoyé par Benjamin Delespierre Voir le message
On peut nativement passer un tableau par paramètre (GET ou POST confondus).
merci pour l'info, je m'endormirai moins bete !
__________________
La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

N'oubliez pas le Le tag resolu.

Need_!
Doksuri est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2011, 14h20   #7
Candidat au titre de Membre du Club
 
Inscription : août 2010
Messages : 37
Détails du profil
Informations forums :
Inscription : août 2010
Messages : 37
Points : 12
Points : 12
Merci pour ces réponses (même si cela vole un peu trop haut pour moi)
Toutefois, j'ai réussi à créer (et à lire ma variable tableau) dans une page php
print_r($lib_agg); m'affiche bien mes enregistrements.
et il ne me manque plus qu'à la passer dans la page suivante ; et là, je me mélange les crayons avec les sessions, les echo $_POST['lib_agg'], ou les echo $lib_agg, etc...
Pouvez-vous me guider ?
Merci
tapi21 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2011, 15h07   #8
Modérateur
 
Avatar de FirePrawn
 
Homme Sébastien
Ingénieur réalisateur
Inscription : mars 2011
Messages : 779
Détails du profil
Informations personnelles :
Nom : Homme Sébastien
Âge : 24
Localisation : France, Haut Rhin (Alsace)

Informations professionnelles :
Activité : Ingénieur réalisateur
Secteur : Industrie

Informations forums :
Inscription : mars 2011
Messages : 779
Points : 2 366
Points : 2 366
Oui voici de l'aide.
__________________
- Avant toute chose : lire le mode d'emploi du forum et ses règles.
- avant de poster
- Je ne réponds pas aux questions techniques en MP.
FirePrawn est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2011, 15h37   #9
Candidat au titre de Membre du Club
 
Inscription : août 2010
Messages : 37
Détails du profil
Informations forums :
Inscription : août 2010
Messages : 37
Points : 12
Points : 12
ok, merci, je vais reprendre les choses depuis le début et dans l'ordre.
tapi21 est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h16.


 
 
 
 
Partenaires

Hébergement Web