Aller au contenu

Sujets conseillés

Posté

Bonjour,

Je cherche la solution la plus logique pour faire ce qui suis :

- 3 menu deroulants dépendant l'un de l'autre (l'info de l'un changeant le contenu de l'autre ...) ---> a priori je passerais par du java ?

- le contenu de ces menus correspondent chacun au contenu d'une table de ma base ---> la ça ce corse ... si c'est trop complexe je ferais la structure des menus dans le code direct ...

- les valeurs des menus pourront être récupéré et donc injecter dans ma base ---> je pense que via un simple _post je peu faire des variables et les injecter ?

bref ce principe devra être présent 3 fois (pour la petite explication il s'agit pour le visiteur d'avoir la possibilité de choisir 3 modeles de matos different dependant chacun d'une catégorie & d'une marque)

- le principe des menus déroulant n'est peut être pas le meilleur ?

- si oui ma logique est elle correct ?

c'est un peu embrouillé voilà le lien ce sera plus simple Le lien (c'est les menus de la première page que je voudrais changer ... pour faire 3 lignes de 3 menus deroulant le client pouvant rechercher 3 modèles differents)

Merci, à tous :D

ps : je débute :whistling:

Posté

Hello,

ca doit pouvoir se faire avec une combinaison php/mysql et CSS non?

M'empeche que ca n'est pas evident ...

Posté
- 3 menu deroulants dépendant l'un de l'autre (l'info de l'un changeant le contenu de l'autre ...) ---> a priori je passerais par du java ?

Par du Java ?? :huh: Pas du tout. Plutôt par du Javascript :)

Ce que tu voudrais faire ressemble beaucoup à de l'Ajax (qui est issu du Javascript)

Posté (modifié)

java ... javascript :gueule: enfin je me comprend :P (je me renseigne sur l'ajax)

Bon comme c'est pas très clair je reessaye d'expliquer ce que je cherche à faire :

- déjà ce site proposera de créer une "fiche client" pour faire rechercher par le webmaster le materiel de pêche qu'on désire (en occasion)

- la creation de la fiche ce fera par le biais du formulaire déjà créé, il me manque juste une chose c'est que le client pourrais vouloir rechercher 1, 2, 3, sorte de moulinets, cannes ... différents, donc creation 3 menus deroulants (max) ou autre pour saisir ceci ... (chaque article ayant une catégorie, marque, modèle)

j'espère que je suis clair :blush: donc je suis prête à renoncer au menu déroulant s'il y a quelquechose de plus adapté ... j'avais penser au case à cocher mais vu le nombre de marque ce sera trop lourdingue ...

je suis prête à faire un truc en flash si necessaire :fou: helpppp

en faite je suis en panne pour mettre en forme ça de façon pas trop lourdingue en code et en usage, alors je m'adresse au pêcheur et aux autres acheteur de matériels divers et variés ... qu'aimeriez vous comme interface ?

encore merci ;)

Modifié par nikita-1000
Posté

Tu devrais mettre des listes déroulantes, plutot que des menus déroulants.

Le javascript a l'inconvénient de ne pas être accessible par tout le monde, et il est dommage de se priver d'une partie de sa clientèle potentielle, et d'autre part, on utilise les listes déroulantes pour les formulaires, et non des menus déroulants.

Voilà ;)

Posté

Euh... Au risque de paraître un peu lente d'esprit... la différence entre une liste déroulante et un menu déroulant... :huh: c'est que la liste est sur plusieures lignes avec un ascenseur, le menu sur une seule ligne avec une flèche pour tout afficher... C'est ça ?

Si j'ai bon, je ne savais pas que le menu déroulant n'était pas accessible à tous :huh:

En quoi pose-t-il problème ?

Tant qu'on est dans le vocabulaire : menu déroulant = combo box ?

Posté

La liste déroulante, c'est :

<select ..>

<option>1</option>

<option>2</option>

</select>

Le menu déroulant, c'est plutot comme ceci :

http://www.pompage.net/IMG/html/deroulants...e_2_niveau.html

(merci : http://www.pompage.net/ ;) )

Le menu déroulant n'est pas accessible s'il est fait en javascript, alors qu'il l'est dans la méthode donnée en lien ci dessus.

Posté

Hello,

bon c'est bien une liste deroulante que je fais :)

j'ai tourné retourné le problème je pense que je vais sur la première page mettre des sortes de vignettes pour choisir le type de matériels : cannes, moulinet ...

puis il y aura 3 x 2 menu deroulant pour choisir max 3 modèles différents (& marques)

je pense que ce sera le plus ergonomique et pratique pour l'usager ... si vous avez une autre idée n'hésité pas :D

merci

  • 2 semaines plus tard...
Posté

Jettes un oeil sur le code source de la page citée, c'est fait pour ca ;)

De manière générale, jettes un oeil sur le site 'pompage', c'est la meilleure facon d'apprendre à faire des menus verticaux correctement.

Dis nous si tu bloques quelque part :D

Posté

Bonjour :D

le projet avance et oui B)

voilà la version graphique :Le lien (ya des fautes d'ortho je sais :blush: faut que je corrige)

j'ai farfouillé sur divers site et je commance à bien comprendre php, java ... me reste un petit problème :

- Si on tente de créer via un formulaire (variable post et/ou session) mais que le formaulaire est mal ramplit j'aimerais mettre un message 'il manque tel ou tel champs ...'

le problème est le bouton retour si je fais un retour j'ai la traditionelle "Avertissement : expiration du délai pour cette page" dû au variable je suppose :wacko: quelqu'un aurait il le principe à utilisé ? j'ai bidouillé mais rien de concluant :unsure:

Merci

Posté

Il ne faut pas faire un 'retour', mais 'continuer', et afficher la même page, avec les champs préremplis.

Montres nous ton code, que l'on puisse t'aiguiller. ;)

Posté (modifié)

Salut,

préambule : aujourd'hui je suis avec un lynx (navigateur texte) car mon ordi est cassé :(, alors vu la galère je n'ai pas regardé

tous les liens que vous avez mis. Ce qui ne m'empêche pas de vouloir mettre mon grain de sel ...

Java et flash sont à mon avis à éviter : ils ne passent pas partout.

Pour ce qui est des listes, il s'agit bien d'un formulaire, donc l'utilisation de la balise select me semble tout à fait adaptée.

Ceci étant dit, voici comment je procéderai :

1. Faire une page par niveau d'option : on choisi "cannes à pêche", on clique sur "envoyer", on choisi la marque, on clique sur envoyer ...

Si il y a des vérifications à faire elles sont faites en PHP et en cas d'erreur, un message est affiché, et l'utilisateur est redirigé vers le bon formulaire.

La c'est pas très pratique / joli, mais ça marche partout.

2. Tu peux déjà améliorer ceci en ajoutant du javascript : la détection d'erreur est effectuée par le navigateur du client et affichée sans avoir à recharger la page.

3. Pour avoir quelque chose de dynamique je te conseille le javascript. Dans ce cas, tu bloques le "submit" du formulaire, puisque c'est le javascript qui va l'émuler. Tu restes cependant compatible avec quelqu'un qui n'a pas le javascript.

3.1 Soit tu n'as pas trop de choix possibles, tu les mets tous dans ta page et les affiches en fonctions du choix l'utilisateur

3.2 Soit la solution précédente n'est pas possible (trop lourd), alors tu fais des requêtes HTTP en javascript pour obtenir le contenu du menu "select" suivant. C'est fluide et ça marche avec les navigateurs modernes, et en plus c'est pas très compliqué.

Pour obtenir le menu dépendant du choix, il faudra que tu appelles un script PHP, du genre menu.php?choix1=cannes&choix2=marque, (au passage : cela peut-être le même fichier que dans la solution 1) celui ci retournera :

<select name=""><option value="">toto</option>...</select>

, ce que tu afficheras au bon endroit.

Voilà, après ce que je te dis là n'est pas forcément adapté à ton code déjà en place, c'est juste une idée en passant ;)

Bon courage !

Edit: j'ai relu l'ensemble, et je suis pas sûr d'avoir compris ce que vous préferriez : le menu déroulant (select) ou la liste déroulant (ul) ? (Edit2: si j'ai (crois avoir) compris, avantage de la liste sans javascript : pas besoin de cliquer sur "envoyer")

Pour moi les 2 sont tout à fait accessibles : la liste enverra les variables dans l'url, le select dans l'url ou en "post".

J'en remets un couche (je me suis aussi fait surprendre) : Java et Javasript sont bien différents : un applet java chargé sur une page web requiert un plug-in, et est compilé (de même que flash), javasript est exécuté par le navigateur lui-même (pas par un plugin). Donc attention quand tu parles de Java ou Javascript ;)

Modifié par enroc
Posté

<?
session_start();

?>
<html>
<head>
<title>Templates carpesearch3 copie</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
.home {
font-family: Arial, Helvetica, sans-serif;
font-size: 9px;
font-style: normal;
}
.titre {
font-family: Arial, Helvetica, sans-serif;
font-size: 12px;
font-weight: bolder;
}
.nom {
font-family: Arial, Helvetica, sans-serif;
font-size: 11px;
font-weight: normal;
}
.texte {
font-family: Arial, Helvetica, sans-serif;
font-size: 18px;
font-weight: bold;
}
.Style2 {font-family: Arial, Helvetica, sans-serif; font-size: 18px; font-weight: bold; color: #5d86ae; }
-->
</style>
<title>Création d'une fiche</title>

</head>
<body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<?


include("connect.php");

$titf1 = mysql_query("SELECT titre FROM `flash` LIMIT 0,1");
$restitf1 = mysql_fetch_array($titf1);
$titFlash1 = $restitf1["titre"];

$titf2 = mysql_query("SELECT titre FROM `flash` LIMIT 1,2");
$restitf2 = mysql_fetch_array($titf2);
$titFlash2 = $restitf2["titre"];

$forf1 = mysql_query("SELECT format FROM `flash` LIMIT 0,1");
$resforf1 = mysql_fetch_array($forf1);
$forFlash1 = $resforf1["format"];

$forf2 = mysql_query("SELECT format FROM `flash` LIMIT 1,2");
$resforf2 = mysql_fetch_array($forf2);
$forFlash2 = $resforf2["format"];

$f1 = mysql_query("SELECT ID FROM `flash` LIMIT 0,1");
$resf1 = mysql_fetch_array($f1);
$Flash1 = $resf1["ID"];

$f2 = mysql_query("SELECT ID FROM `flash` LIMIT 1,2");
$resf2 = mysql_fetch_array($f2);
$Flash2 = $resf2["ID"];

$pf1 = mysql_query("SELECT prix FROM `flash` LIMIT 0,1");
$respf1 = mysql_fetch_array($pf1);
$pFlash1 = $respf1["prix"];

$pf2 = mysql_query("SELECT prix FROM `flash` LIMIT 1,2");
$respf2 = mysql_fetch_array($pf2);
$pFlash2 = $respf2["prix"];


$cat = $_SESSION['cat'];
$nom = $_POST['nom'];
$mail = $_POST['mail'];
$tel = $_POST['tel'];
$mar = $_POST['mar'];
$mod = $_POST['mod'];
$info = $_POST['info'];
$jour= date("d");
$mois= date("m");
$annee= date("Y");
$moins= '-';
$date = $annee . $moins . $mois . $moins . $jour; ?>


...html...

<map name="Map">
 <area shape="circle" coords="365,43,23" href="index.php">
 <area shape="circle" coords="421,42,23" href="mail.php">
 <area shape="circle" coords="482,43,23" href="/admin/admin.php">
</map>

</body>
</html>

Pour Anonymus si j'ai bien compris :

index.php valid

---> creation.php (on remplis les variables) valid

---> nouvelle_fiche.php erreur detecté valid (code ci dessus)

---> creation.php ou on retrouve notre formulaire preremplis avec les renseignement déjà indiqué ? (avec les sessions ça marcherais ?)

merci :)

Posté

Bonjour,

j'y ai passé le temps qu'il fallais mais c'est resolu j'ai effectivement utilisé le principe d'aller a nouveau sur la page d'avant pas de retour, avec quelques conditions qui remplisse le formulaire si les variables existent déjà :D

La version (presque) finale est ici

Bon maintenant je m'attaque au plus rigolo l'envois de mail automatisé, c'est à dire qu'au bout de 15 jours un mail de rappel puisse être envoyé pour vérifier que le client recherche toujours ce matériel :wacko:

Je m'aventure dans les cronjob apperement si quelqu'un à des liens doc tuto pour que je comprenne comment ça marche je suis preneuse :D

merci :)

Posté

Salut

bah le cron c'est rien, c'est juste de dire que "tel script" sera exécuté à "telle fréquence".

Donc tu as juste à faire ton script, le lancer à la main pour le tester, et quand tu es prête à l'ajouter dans le crontab. (man crontab)

Posté

Bonjour,

merci de ta réponse, mon hebergeur malheureusement ne gère pas cette option :huh: je vais donc me retourner vers webcron il parait que c'est une bonne alternative :)

merci

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...