Select onchange submit php

Signaler
Messages postés
1423
Date d'inscription
mardi 14 décembre 2004
Statut
Membre
Dernière intervention
29 décembre 2012
-
Messages postés
1423
Date d'inscription
mardi 14 décembre 2004
Statut
Membre
Dernière intervention
29 décembre 2012
-
bon et bien suite a des recherches peu fructueuses je m adresse ici ...
j'ai fait un formulaire en php afin d afficher le profile d un membre choisit par le client par un select. Lorsque j'utilise le bouton submit il n y a aucun probleme mais je voulais qqch de plus "intuitif"...
De ce fait j ai voulu ajouter la possibilité qu un utilisateur fénéant ait juste a changer le choix du select pour soumettre le formulaire.
Voici le code mais je n'arrive pas a faire soumettre le formulaire quand l'utilisateur change la valeur du submit.
J espere que qqun m aidera
si vous avez des suggestions pour ameliorer ce code je suis preneur aussi ^^

<?php
session_start();
require ('../functions/functions.php');
require ('../include/config.php');
echo "<form method="post" action="voir_profils.php">";
echo '<center>Les Profils</center>';
$login=$_SESSION['login'];
$id_login=substr(strrchr(substr($login, 0,strlen($login)-2), "-"),1);
connect_and_select_bdd($hostdb,$logindb,$passworddb,$db);
$result=query("SELECT * FROM acces");
$resultrow=no_result($result);
if($resultrow!=0){
if(!isset($_POST['combologin'])){
echo "<SELECT NAME="combologin" onchange="submit()">";
while ($row = mysql_fetch_assoc($result)){
$id_logins= $row['id_compte'];
if($id_login==$id_logins){
echo "<OPTION VALUE="$id_logins"selected>";
printf('%s',$row['login']);
}
else{
echo "<OPTION VALUE="$id_logins">";
printf('%s',$row['login']);
}
}
echo "</SELECT>";
$result=query("SELECT * FROM profile WHERE id_compte='$id_login'");
tableau_dynamique_vertical($result);
echo "
</center>";
}
elseif(isset($_POST["combologin"])){
$id=$_POST['combologin'];
echo "<SELECT NAME="combologin" onchange="submit()">";
while ($row = mysql_fetch_assoc($result)){
$id_logins= $row['id_compte'];
if($id==$id_logins){
echo "<OPTION VALUE="$id_logins"selected>";
printf('%s',$row['login']);
}
else{
echo "<OPTION VALUE="$id_logins">";
printf('%s',$row['login']);
}
}
echo "</SELECT>";
$result=query("SELECT * FROM profile WHERE id_compte='$id'");
tableau_dynamique_vertical($result);
echo "
</center>";
}
}
else{
echo 'aucun membre donc aucun profil a afficher';
}
?>

-------------------------------------------------------------------------------------------------------
Il vaut mieux poser une question et passer pour bête que le rester toute sa vie

6 réponses

Messages postés
1216
Date d'inscription
mardi 20 décembre 2005
Statut
Membre
Dernière intervention
18 octobre 2012
4
echo "<SELECT NAME='combologin' onchange='this.form.submit();'>";
Messages postés
1423
Date d'inscription
mardi 14 décembre 2004
Statut
Membre
Dernière intervention
29 décembre 2012
4
j'ai modifier les 2 select mais ca fait rien du tout quand je change de valeur dans le select.
je dois t'avouer que j'avais deja essayer cette syntaxe sans resultat.
faut il enlever qqch ?ajouter qqch ?
-------------------------------------------------------------------------------------------------------
Il vaut mieux poser une question et passer pour bête que le rester toute sa vie
Messages postés
1216
Date d'inscription
mardi 20 décembre 2005
Statut
Membre
Dernière intervention
18 octobre 2012
4
c'est quoi no_result ??
Messages postés
1216
Date d'inscription
mardi 20 décembre 2005
Statut
Membre
Dernière intervention
18 octobre 2012
4
$result=query("SELECT * FROM acces");

ça non plus je ne connais pas
Messages postés
1216
Date d'inscription
mardi 20 décembre 2005
Statut
Membre
Dernière intervention
18 octobre 2012
4
connect_and_select_bdd($hostdb,$logindb,$passworddb,$db);
ça non plus
Messages postés
1423
Date d'inscription
mardi 14 décembre 2004
Statut
Membre
Dernière intervention
29 décembre 2012
4
c des fonctions que j'ai faite voici leur implementation
je suppose qu'elle fonctionne puisque je les utilise ailleurs...

function connect_and_select_bdd($hostdb,$logindb,$passworddb,$db){

$link = mysql_connect($hostdb,$logindb,$passworddb)
or die('Impossible de se connecter : ' . mysql_error());
$db_selected = mysql_select_db($db, $link);
if (!$db_selected) {
die ('Impossible d\'utiliser la base : ' . mysql_error());
}
}

function query($str_query){
$result = mysql_query($str_query) or die('Echec de la requête');
return $result;
}

function no_result($result){
$results=0;
if (mysql_num_rows($result) != 0) {
$results=mysql_num_rows($result);
}
return $results;
}

-------------------------------------------------------------------------------------------------------
Il vaut mieux poser une question et passer pour bête que le rester toute sa vie