Checkbox et barre deroulante pré-selectionné

Fermé
axeldeux Messages postés 42 Date d'inscription mercredi 22 avril 2015 Statut Membre Dernière intervention 14 décembre 2015 - 15 juin 2015 à 11:48
jordane45 Messages postés 38321 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2024 - 18 juin 2015 à 09:23
Bonjour,
j'ai un script qui sert a modifier une ligne et je voudrais que quand je veut modifier une ligne il y est déjà les informations de ma ligne avant la modification qui soit déjà coché par exemple j'ai des serveurs et il faut définir leur roles alors si un serveur est un serveur dns je veut que si je clic sur modifié, que la case dns soit coché j'avais ceci pour les champ text mais vue que la c'est des case ou des barres déroulante, cela ne marche plus.. ce sont des case "checkbox" et des barre déroulante "select"

placeholder="<?php echo($roles) ;


pouvez-vous me dire comment cela s'appelle pour que je face des recherches de mon coté aussi
A voir également:

5 réponses

hharchi9 Messages postés 567 Date d'inscription mercredi 18 décembre 2013 Statut Membre Dernière intervention 1 juillet 2015 24
15 juin 2015 à 12:45
Bonjour,

Il semble que vous cherchiez l'attribut 'select' que vous pouvez utiliser sur les listes dérulantes et checkbox.

Exemple:

 <option class="vide" value="vide" selected disabled>Sélectionnez le motif</option>
0
jordane45 Messages postés 38321 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2024 4 707
15 juin 2015 à 12:56
Bonjour Hharchi .. il parle de CHECKBOX .. pas de listes déroulantes.
L'attribut nécéssaire c'est checked

par exemple :
<?php
 $checked = $roles =="CPD" ? " checked='checked' " : '';
?>
<br>CPD<input type="checkbox" value="CPD" name="roles[]" <?php echo $checked;?>>


0
axeldeux Messages postés 42 Date d'inscription mercredi 22 avril 2015 Statut Membre Dernière intervention 14 décembre 2015
15 juin 2015 à 16:58
si j'en est aussi besoin pour la barre déroulante..

du coup j'ai eu des petit changement jordan45 tu avais raison que s'étais mieux de faire une tables roles du coup je l'est fais

et sa donne ceci mais comment j'incrémente ton code dans le mien ?

<tr align="left">
<td><b>Systeme:</b>
<select name="systeme" action="" style="width:230px">
<?php
$sql = "select * from systeme";
$rep = mysql_query("$sql") ;
while($data = mysql_fetch_assoc($rep))
{
echo '<option value="'.$data['systeme'].'">'.$data['systeme'].'</option>';
}
?></td>
0
jordane45 Messages postés 38321 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2024 4 707 > axeldeux Messages postés 42 Date d'inscription mercredi 22 avril 2015 Statut Membre Dernière intervention 14 décembre 2015
15 juin 2015 à 17:04
Il faut que tu fasses également une requête sur ta tables roles pour récupérer les rôles actifs pour le serveur que tu affiches
0
axeldeux Messages postés 42 Date d'inscription mercredi 22 avril 2015 Statut Membre Dernière intervention 14 décembre 2015
16 juin 2015 à 09:03
je peux les affichés dans le fichiers ou je voit tous mes serveurs mais pas dans ma barre déroulante quand je veut modifié ma ligne (barre déroulante ou checkbox) je voudrais vous le montrer en image mais sa marche pas (Request error)..
0
jordane45 Messages postés 38321 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2024 4 707
16 juin 2015 à 09:28
Avec des bouts de code on n'avance pas...
Postes nous le code COMPLET de ta page. (et pour l'instant ...UNIQUEMENT la page contenant tes checkboxe ..listes ..)
0
axeldeux Messages postés 42 Date d'inscription mercredi 22 avril 2015 Statut Membre Dernière intervention 14 décembre 2015
Modifié par axeldeux le 16/06/2015 à 09:33
<html>
<style type="text/css" media="screen">@import "style.css";</style>
<body class="bloc-fixe">
<!--  menus -->

<div id="menu">
  <ul id="onglets">
    <li><a href="index.php"> Retour </a></li>
    <li><a href="client.php?artis=<?php echo $artis; ?>"> client </a></li>
    <li><a href="schemas.php?artis=<?php echo $artis; ?>"> Schémas - adressage </a></li>
    <li><a href="domaine.php?artis=<?php echo $artis; ?>"> Domaine- mdp </a></li>
    <li a class="active"><a href="serveurs.php?artis=<?php echo $artis; ?>"> Serveurs </a></li>
    <li><a href="sauvegardes.php?artis=<?php echo $artis; ?>"> Sauvegardes </a></li>
    <li><a href="wan.php?artis=<?php echo $artis; ?>"> WAN </a></li>
  </ul>
</div>
<?php
# recup variable :
  $artis=$_GET["artis"];
  $systeme   = $_GET["systeme"] ;
  $id=$_GET["id"];

  //connection au serveur
  $cnx = mysql_connect( "localhost", "****", "****" ) ;

  //sélection de la base de données:
  $db  = mysql_select_db( "***" ) ;
ini_set('display_errors', '1');



  $sql  = "SELECT * FROM serveurs 
    WHERE id = ".$id ;

  $requete = mysql_query( $sql, $cnx ) ;

  while($result = mysql_fetch_array($requete))
{
  $id           = $result['id'];
  $artis        = $result['parent'];
  $nom          = $result['nom'];
  $systeme      = $result['systeme'];
  $adresseip    = $result['adresseip'];
  $ipsaas       = $result['ipsaas'];
  $physique     = $result['physique'];
  $roles        = $result['roles'];
  $commentaires = $result['commentaires'];
}
?>
<form name="insertion" action="modification3.php?id=<?php echo $id; ?>" method="POST">
  <input type="hidden" name="nom" value="<?php echo($nom) ;?>">
  <table border="0" align="center" cellspacing="2" cellpadding="2">
    <input type="hidden" name="parent" value="<?php echo($artis) ;?>">
  <input type="hidden" name="id" value="<?php echo($id) ;?>">
  <table border="0" align="center" cellspacing="2" cellpadding="2">
  <tr align="left">
      <td><b>nom:</b>
      <input type="text" name="nom" placeholder="<?php echo($nom) ;?>"value="<?php echo($nom) ;?>"></td>
    </tr>

<tr align="left">
      <td><b>Systeme:</b>
<select name="systeme" action="" style="width:230px"> 
<?php 
$sql = "select * from systeme"; 
$rep = mysql_query("$sql") ; 
while($data = mysql_fetch_assoc($rep)) 
{ 
echo '<option value="'.$data['systeme'].'">'.$data['systeme'].'<?php echo $checked;?></option>'; 
}
?></td>
    </tr>
    <tr align="left">
      <td><b>Adresse IP:</b>
      <input type="text" name="adresseip" placeholder="<?php echo($adresseip) ;?>"value="<?php echo($adresseip) ;?>"></td>
    </tr>
 <tr align="left">
      <td><b>Ipsaas:</b>
      <input type="text" name="ipsaas" placeholder="<?php echo($ipsaas) ;?>"value="<?php echo($ipsaas) ;?>"></td>
    </tr>
    <tr align="left">
      <td><b>Physique/Virtuel:</b>
          <select name="physique" onchange="physique">
        <option value="Physique">Physique</option>
        <option value="Virtuel">Virtuel</option>
          </select></td>
<tr align="left">
      <td><b>Roles:</b>
<?php 
$sql = "select * from roles"; 
$rep = mysql_query("$sql") ; 
while($data = mysql_fetch_assoc($rep)) 
{ 
echo '
<input type="checkbox" value="'.$data['roles'].'" name="roles[]">
<option value="'.$data['roles'].'">'.$data['roles'].'</option>'; 
}
?></td>
    </tr>
<?php
$checkboxes = isset($_POST['roles']) ? $_POST['roles'] : array();
foreach($checkboxes as $value) {
}

?>
    <tr align="left">
      <td><b>commentaires:</b>
      <input type="text" name="commentaires" placeholder="<?php echo($commentaires) ;?>"value="<?php echo($commentaires) ;?>"></td>
    </tr>
    <tr align="left">
      <td colspan="2"><input type="submit" value="modifier"></td>
    </tr>
  </table>
</form>
</body>
</html>
0
jordane45 Messages postés 38321 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2024 4 707
16 juin 2015 à 09:35
Ta table roles ... ce n'est pas ce que je t'ai conseillé je pense...
La tu y a mis les ROLES ....TOUS les roles ... mais ... ce n'est pas la table dans laquelle tu insères les "relation" entre tes serveurs ...et les rôles ... si ?

Pourrais tu nous montrer la structure de tes tables ?
0
axeldeux Messages postés 42 Date d'inscription mercredi 22 avril 2015 Statut Membre Dernière intervention 14 décembre 2015
16 juin 2015 à 11:53
non sa me sert juste pour alimenter les checkboxes et barre deroulante..


j'ai une table: serveurs:
parent(identifiant du client)
nom du serveur
systeme
ip
physique
ipsaas
roles
commentaire

j'ai deux autre tables une roles et une autre systeme ou il y a tous les roles disponible et tous les systeme..

une tables clients..
0
jordane45 Messages postés 38321 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2024 4 707
16 juin 2015 à 13:00
Donc.. comme je te le suggérait ... il serait bien d'avoir également une table de relation entre les serveurs et les rôles. ( relation 1->N )
et donc .. faire une table qui aurait la structure suivante :

id
id_serveur
id_role


Ensuite... lorsque tu ajoutes/modifie/supprime des rôles pour un serveur.... tu le fais via cette table.

Et ta table serveurs n'aurait plus que les champs :

parent(identifiant du client)
nom du serveur
systeme
ip
physique
ipsaas
commentaire
0
axeldeux Messages postés 42 Date d'inscription mercredi 22 avril 2015 Statut Membre Dernière intervention 14 décembre 2015
16 juin 2015 à 14:07
je comprend se que tu veut dire mais si je fais cela je suis obliger de mettre tous les roles dans mon script si je comprend bien? car je ne peut faire via la tables car il y a plusieursclient donc plusieurs serveur qui on le meme roles donc il y aura des doublons si je fais via la tables..
0
jordane45 Messages postés 38321 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2024 4 707
16 juin 2015 à 15:01
NON.

Tu as ta tables ROLES .. .qui te permet d'afficher la liste de tes ROLES.
Une table SERVEURS qui stocke .. ben .. tes serveurs....

ET une AUTRE TABLE .. qui fera la liaison entre les roles et les serveurs .... ce qui te permettra via (une seconde requete) de savoir quels rôles sont selectionnés pour Tel ou Tel serveur.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jordane45 Messages postés 38321 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2024 4 707
Modifié par jordane45 le 17/06/2015 à 17:03
Dans le code qui te sert à mettre à jour les infos de ta table serveur.... tu ajoutes une fonction qui
Supprime les rôles attachés à ce serveur
 $sql = " delete from tatablerolesserveur where id_serveur='$xx'"

puis.. une qui ajoutes les rôles cochés
 $sql = "insert into tatablerolesserveur (id_serveur,id_role) values ";
 foreach($roles as $R){
   $sql.="('$xx','$R'),";
}
//execution de la requête



Cordialement,
Jordane
0
axeldeux Messages postés 42 Date d'inscription mercredi 22 avril 2015 Statut Membre Dernière intervention 14 décembre 2015
18 juin 2015 à 09:18
d'accord et ensuite pour les affichés lors de la modification?
0
jordane45 Messages postés 38321 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2024 4 707
18 juin 2015 à 09:23
ben une requête du genre

$sql = " SELECT * FROM tatablerolesserveur WHERE id_serveur='$xx'"
0