[RESOLU] Remplir un select depuis un fichier texte

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Remplir un select depuis un fichier texte

Re: [RESOLU] Remplir un select depuis un fichier texte

par InfoGeo » 17 oct. 2012, 18:44

je vous remercie tous ^^

Re: [RESOLU] Remplir un select depuis un fichier texte

par asf21 » 17 oct. 2012, 18:34

Remercies AB, pas moi! ;)

Re: Remplir un select depuis un fichier texte

par InfoGeo » 17 oct. 2012, 13:47

lol asf21, désolé en tt cas merci d avoir essayé de m aider c super sympa ! =)

Re: Remplir un select depuis un fichier texte

par asf21 » 17 oct. 2012, 13:26

Pour mes <option> à traiter sous php, j'ai toujours eu l'habitude d'écrire ainsi:
?>
<option value="<? echo $piece['virtuemart_product_id']?>">Pièce 1</option>
<? 
Ainsi j'évite la confusion des quote / double quote...


Edit:
Bien vu! Tu as posté avant moi! lol
Je crois que c'est le modo qui autorise le bouton RESOLU.

Re: Remplir un select depuis un fichier texte

par InfoGeo » 17 oct. 2012, 13:20

non aucune confusion je fais des copier coller mais j ai trouvé ou se situait mon problème ^^ en fait la page était index.html au lieu de index.php


Pour ceux que ca interesse voila ce que j'ai fait:
<div id="div_area" style="display:none;">
			<p>
			<select id="select_area">                      
				<?php
					$rows = file("datas/LArea.txt", FILE_SKIP_EMPTY_LINES);
					foreach($rows as $value){
				?>
						<option value="<?php echo $value; ?>"><?php echo $value; ?></option>
				<?php
					}                                     
				?>                             
			</select>
			</p>
			<br/>                          
		</div>

		
		<div id="div_subarea" style="display:none;">
			<p>
			<select id="select_subarea">                      
				<?php
					$rows = file("datas/LSArea.txt", FILE_SKIP_EMPTY_LINES);
					foreach($rows as $value){
				?>
						<option value="<?php echo $value; ?>"><?php echo $value; ?></option>
				<?php
					}                                     
				?>                             
			</select>
			</p>
			<br/>                          
		</div>	

		<div id="div_countryunit" style="display:none;">
			<p>
			<select id="select_countryunit">                      
				<?php
					$rows = file("datas/LCountryU.txt", FILE_SKIP_EMPTY_LINES);
					foreach($rows as $value){
				?>
						<option value="<?php echo $value; ?>"><?php echo $value; ?></option>
				<?php
					}                                     
				?>                             
			</select>
			</p>
			<br/>                          
		</div>	

		<div id="div_country" style="display:none;">
			<p>
			<select id="select_country">                      
				<?php
					$rows = file("datas/LCountry.txt", FILE_SKIP_EMPTY_LINES);
					foreach($rows as $value){
				?>
						<option value="<?php echo $value; ?>"><?php echo $value; ?></option>
				<?php
					}                                     
				?>                             
			</select>
			</p>
			<br/>                          
		</div>			


qui renvoies à ca:

[javascript]function select_sort (value) {
if (value == "area") {
document.getElementById("div_area").style.display = "";
document.getElementById("div_subarea").style.display = "none";
document.getElementById("div_country").style.display = "none";
document.getElementById("div_countryunit").style.display = "none";
}
if (value == "subarea") {
document.getElementById("div_area").style.display = "none";
document.getElementById("div_subarea").style.display = "";
document.getElementById("div_country").style.display = "none";
document.getElementById("div_countryunit").style.display = "none";
}
if (value == "country") {
document.getElementById("div_area").style.display = "none";
document.getElementById("div_subarea").style.display = "none";
document.getElementById("div_country").style.display = "";
document.getElementById("div_countryunit").style.display = "none";
}
if (value == "countryunit") {
document.getElementById("div_area").style.display = "none";
document.getElementById("div_subarea").style.display = "none";
document.getElementById("div_country").style.display = "none";
document.getElementById("div_countryunit").style.display = "";
}
if (value == "world") {
document.getElementById("div_area").style.display = "none";
document.getElementById("div_subarea").style.display = "none";
document.getElementById("div_country").style.display = "none";
document.getElementById("div_countryunit").style.display = "none";
}
}[/javascript]



merci d'avoir essayé de m'aider !


je ne sais pas comment on rend un sujet résolu ....

Re: Remplir un select depuis un fichier texte

par Mazarini » 17 oct. 2012, 12:00

Vu l'affichage, tu as du mal recopier la ligne :
echo '<option value="'.$value.'">'.$value.'</option>';
Une confusion entre quote et double-quote ?

Pour contrôler ce qui est généré, tu peux regarder le source html de la page.

Re: Remplir un select depuis un fichier texte

par asf21 » 17 oct. 2012, 11:42

Bonjour InfoGeo.
Ton image est fort sympathique mais où se trouve le réel actif depuis lequel tu as fait une impression écran?
C'est ça qui pourrait nous intéresser, l'image ne peut être éditée! ;)
Dump un coup le résultat de ta page html et donnes nous la portion qui est en erreur, avec le source php stp.
Cdt.

Re: Remplir un select depuis un fichier texte

par InfoGeo » 17 oct. 2012, 09:10

Ca affiche '.$value.' dans le select :'(


Mais j'ai l'impression que j'ai un problème avec l'affichage de truc en php dans l'HTML ....

Ce serait possible que ce soit à cause du fait que j'utilise de l'ajax dans mon programme ? Ou du fait que j'utilise WampServer ? ou ?

voila ce que j'ai:
http://gyazo.com/f76f41292b6d24f718c4f43c6c48b8cc

Re: Remplir un select depuis un fichier texte

par AB » 16 oct. 2012, 19:29

Avec ce genre de fichier texte tu aurais avantage à utiliser la fonction file de php.
$tab_fich = file('datas/LArea.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
Fais un print_r($tab_fich); pour contrôle pendant le développement.

Ensuite il reste plus qu'à lister ton tableau :
<?php
//récupération des données
$tab_fich = file('datas/LArea.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);

//visualisation pour débuggage
print_r($tab_fich);

//contrôle du résultat
$tab_fich = isset($tab_fich) && is_array($tab_fich) ?  $tab_fich : array();

?>
<html>
...
<?php if(count($tab_fich) > 0)
{
foreach($tab_fich as $value)
echo '<option value="'.$value.'">'.$value.'</option>';
} ?>
...
</html>

Remplir un select depuis un fichier texte

par InfoGeo » 16 oct. 2012, 17:47

Bonjour !

Je suis entrain de réaliser un site web mais bon j'ai pas mal de difficulté ^^

J'ai un fichier excel qui contient des données comme des pays, des aires géographiques .... et ces données je les met dans un fichier texte sous cette forme:

ALBANIA
ALGERIA
ARGENTINA
AUSTRALIA
AUSTRIA
BAHRAIN
BANGLADESH
BELGIUM
BRAZIL
BULGARIA
CAMEROON
CANADA
etc.....

Et je voudrais maintenant remplir un select avec ces données, j'ai essayé ceci:
<div id="div_area" style="display:none;">		
			<select id="select_area">			
				<?php
					$f = fopen("datas/LArea.txt", "r");
					// Read line by line until end of file
					while (!feof($f)) {
						echo '<option value="'.fgets($f).'">'.fgets($f).'</option>';
					}
					fclose($f);					
				?>				
			</select>						
			<br/>				
		</div>

Mais rien ne s affiche dans le select .... :'(


je tiens a dire que j'ai meme essayé ca:
<div id="div_area" style="display:none;">		
			<select id="select_area">			
				<?php
                                    echo '<option value="test">test</option>';				
				?>				
			</select>						
			<br/>				
		</div>
Mais rien ne s affichait non plus alors bon ... je comprend pas trop la ^^


Donc j'espère que quelqu'un ici pourra m'éclairer parce que je sais vraiment pas quoi faire ... j ai essayé de trouver sur internet mais bon pour moi ca revient a ce que j ai fait ....

Help please ^^