Me voila de retour, Grâce à votre aide j'ai pu bien avancer :)
cependant j'ai un petit soucis (encore..)
ancien post : PHP Form Builder Class avec un CSV
j'avais mis cette même question en fin de sujet mais ce n'est pas vraiment en rapport.
Donc je résume rapidement:
dans le formulaire j'utilise donc l’élément Select permettant d'afficher ces fameuses liste csv. Cela marche très bien encore merci à nebjix :)
mais cela s'affiche de cette façon:
ce n'est pas aussi pratique, ni même la façon correcte dont devrait s'afficher ce style d’élément car dans la doc officielle cela indique cet affichage:
Aurez vous une idée d'où cela pourrait bien provenir ?
j'ai regardé les styles css: je n'ai rien trouvé de concluant, je peux changer la police, la couleur etc mais rien n'indique que cela doit s'afficher ainsi.
j'ai testé les autres style d’éléments genre Radio Buttons: / Checkboxes et cela s'affiche correctement.
Il n'y a vraiment maintenant plus que cet élément select qui fait des siennes.
merci
soit ton bootstrap/css est vérolé, dans le sens ou il à pas le même effet que moi, soit c'est ton php builder ^^
effectivement tu as vu juste, j'ai mis par dessus une nouvelle install de pfbc... (d'ailleur je comprends toujours pas pourquoi le mec à utilisé ce truc).
et maintenant cela fonctionne
Merci de ton aide Glaived !
$options = array("Option #1", "Option #2", "Option #3");
include("PFBC/Form.php");
$form = new Form("form-elements");
$form->addElement(new Element_Select("Select:", "Select", $options));
C'est bien ce que tu à fait ? tu peu nous montrer le rendue html du select ?
Alors voila un exemple de code
//debut code CSV modeles
if ($handle = fopen(dirname( __FILE__ ).DIRECTORY_SEPARATOR.'csv/modeles.csv', 'r')); {
$modeles = array();
while ($data = fgetcsv($handle, 0, ';')) {
$champs = count($data);
for($i = 0; $i < $champs; $i++) {
if (isset($data$i]) && $data$i] != "") {
$modeles] = $data$i];
}
}
}
fclose($handle);
}
// Fin code CSV modeles
$formInfoAnnonce->addElement(new Element\Textarea("Description du bateau :", "descriptifs"));
//marques avec fichier csv
$formInfoAnnonce->addElement(new Element\Select("Marque du bateau :", "marque", $marques, array("required" => 1)));
$formInfoAnnonce->addElement(new Element\Select("Modèle du bateau :", "modele", $modeles, array("required" => 1)));
$formInfoAnnonce->addElement(new Element\Textbox("Lieu du bateau :", "visibilite"));
$formInfoAnnonce->addElement(new Element\YesNo("Vendu avec la place ?", "venduavecplaceport", array("required" => 1) ));
et voila le rendu html:
est ce bien cela que tu voulais voir ?
ha oui et bien voila le rendu natif avec la feuille de style désactivée.
Par exemple pour le type de bateau, qui est aussi un select j'ai mis ce code là:
$formInfoAnnonce->addElement(new Element\Select("Type de bateau :", "type", array("Bateau a moteur", "Voilier"), array("required" => 1)));
et le problème est le même, donc ce n'est pas le fait que ce soit un cvs qui entraine ce changement...
d'accord mais pourais tu donner le code html ? et uniquement html, l'html qui est retourner après traitement php ?
le code source de la page en gros :) désole pour mon incompréhension: en voici une partie donc .
<body>
<nav class="navbar navbar-default" role="navigation"></nav>
<div class="container">
<style type="text/css"></style>
<form id="info_annonce" class="form-horizontal" method="post" action="index.php?action=ajoutBateau" role="form">
<fieldset>
<legend>
Etape 1 - Informations de l'annonce :
</legend>
<div class="form-group">
<label class="col-md-4 control-label" for="info_annonce-element-1">
<span class="required">
*
</span>
Type de bateau :
</label>
<div class="col-md-7">
<select id="info_annonce-element-1" class="form-control" multiple="" required="" name="type">
<option value="Bateau a moteur">
Bateau a moteur
</option>
<option value="Voilier">
Voilier
</option>
</select>
</div>
</div>
<div class="form-group">
<label class="col-md-4 control-label" for="info_annonce-element-2">
<span class="required">
*
</span>
Prix du bateau :
</label>
<div class="col-md-7">
<input id="info_annonce-element-2" class="form-control" type="number" required="" placeholder="En euros" min="0" name="prix_public"></input>
</div>
</div>
<div class="form-group">
<label class="col-md-4 control-label" for="info_annonce-element-3">
<span class="required">
*
</span>
Tva :
</label>
<div class="col-md-7">
<label class="radio">
<input id="info_annonce-element-3-0" type="radio" value="ht" required="" name="tva"></input>
Hors Taxes
</label>
<label class="radio">
<input id="info_annonce-element-3-1" type="radio" value="ttc" required="" name="tva"></input>
Toutes taxes comprises
</label>
</div>
</div>
<div class="form-group">
<label class="col-md-4 control-label" for="info_annonce-element-4">
Description du bateau :
</label>
<div class="col-md-7">
<textarea id="info_annonce-element-4" class="form-control" name="descriptifs" rows="5"></textarea>
</div>
</div>
<div class="form-group">
<label class="col-md-4 control-label" for="info_annonce-element-5">
<span class="required">
*
</span>
Marque du bateau :
</label>
<div class="col-md-7">
<select id="info_annonce-element-5" class="form-control" multiple="" required="" name="marque">
<option value="3C Composite">
3C Composite
</option>
<option value="3D Tender">
3D Tender
</option>
<option value="4XC"></option>
<option value="A.P.S Aubin"></option>
<option value="Aacap"></option>
<option value="AB Inflatables"></option>
<option value="AB Marine"></option>
<option value="AB Yachts"></option>
j'ai coupé apres car la liste est longue
la fin :
<option value="Alphaboat"></option>
<option value="Alphena Yachts"></option>
<option value="Alson"></option>
<option value="Altair"></option>
<option value="Altamar"></option>
Certains nœuds ont été masqués.
</select>
</div>
</div>
<div class="form-group">
<label class="col-md-4 control-label" for="info_annonce-element-6">
<span class="required">
*
</span>
Modèle du bateau :
</label>
<div class="col-md-7"></div>
</div>
<div class="form-group"></div>
<div class="form-group"></div>
<div class="form-actions"></div>
</fieldset>
</form>
<script type="text/javascript"></script>
</div>
<script src="./ressources/js/jquery.js"></script>
<script src="./ressources/js/bootstrap.js"></script>
<script src="./ressources/js/dynatable.js"></script>
<script src="./ressources/js/sortArray.js"></script>
</body>
Voila ce que me donne mon inspecteur de code, je ne sais pas si cela pourra t'aider
ton problème viens de l'attribu multiple sur les select
<select id="info_annonce-element-1" class="form-control" multiple="" required="" name="type">
Faut que tu réussisse à le tej' ^^
C'est étrange car par défaut il est pas en multiple ^^
ha d'accord merci d'avoir ciblé le problème !
comme j'ai récupéré ce site codé par une autre personne je suis un peu dans un yaourt :)
pourquoi avoir mis un tel attribu ? je vais en tout cas creuser et essayer comme tu dis de le tej ! car cela donne un rendu pourri :)
merci en tout cas
bah tu passe par la class pour generer ton html, donc c'est étrange, essaie de mettre à jour ton install de php build trucmuche, car par defaut ce comportement ne ce fait pas
effectivement dans le css de bootstarp il y à: [code]select[multiple], select[size] { height: auto; }[/code] cependant si je le tej : voila le rendu avec css [img]http://www.startpoker.fr/html3.png[/img] donc c'est tout écrase mais si je désactive les css j'obtiens exactement le même rendu que l'image dans le post précédent sans css il doit donc y avoir plusieurs effets en cascades... je vous tiens au courant