$id se perd

Résolu
txiki Messages postés 6596 Date d'inscription   Statut Contributeur Dernière intervention   -  
txiki Messages postés 6596 Date d'inscription   Statut Contributeur Dernière intervention   -
Salut a tous,
Voilà ça fait plusieurs jours que j'essaie de mettre en place une page protégée (2 pages en 1 en fait) mais quand on clique sur modifier, avant de valider le login et le pass, l'id est bon. Sauf que, en validant, il se perd (est vide). Voici le code complet de la page en question.
Le Pb vient du fait que j'utilise la variable session_start() (si je supprime la protection login/pass, ça fonctionne mais ce n'est pas le but). Les modifs, suppression et ajout sont uniquement réservées aux administrateurs et c'est ça mon Pb.
<?
session_start();  // Démarrage de la session. A placer obligatoirement avant tout code html.

$_SESSION['connect'] = 0; //initialise la variable 'connect'.

if (isset($_POST['mot_de_passe']) AND isset($_POST['login'])) // Si les variables existent.
{
        $mot_de_passe = $_POST['mot_de_passe'];
        $login = $_POST['login'];  //On récupère les données envoyées par la méthode POST du formulaire d'identification.
}
else // Les variables n'existent pas encore.
{
        $mot_de_passe = "";
        $login = ""; // On crée des variables $mot_de_passe  et $login vides.
}

if (($mot_de_passe == "tintin" AND $login == "txiki") OR ($mot_de_passe == "******" AND $login == "******")OR ($mot_de_passe == "******" AND $login == "******") OR ($mot_de_passe == "******" AND $login == "******"))
// Si le mot de passe et le login sont bons (valable pour 4 utilisateurs). Plusieurs identifiants et mots de passe.

{
		$_SESSION['connect'] = 1;  // Change la valeur de la variable connect. 
		$_SESSION['login'] = $login;  // Permet de récupérer le login afin de personnaliser la navigation.
$_GET['id'] = '$id'; // On transmet la variable id de la fiche sélectionnée
// Si le couple login/pass est correct, on affiche la page cachée.
// ****************************************************************
?>
<!-- page cachée que l'on va afficher si le couple login/pass est OK --> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
  <title>Fiche d&eacute;taill&eacute;e du logiciel</title>
  <link href="scripts_styles/form.css" rel="stylesheet">
  </head>
  <body>
<table border="0" align="center" cellpadding="0" cellspacing="0" id="titre">
	<tr>
    <td id="td-gauche">&nbsp;</td>
    <td id="td-milieu"><h1> Fiche logicielle a modifier</h1></td>
    <td id="td-droit">&nbsp;&nbsp;</td>
	</tr>
</table>
      <br />
<?
mysql_pconnect('localhost','root','') or die ("Impossible de se connecter à MySQL"); // On se connecte a mysql.
mysql_select_db('txiki') or die("Impossible de sélectionner la base de données"); // On choisi la base de données.

//==============================================================================
// requête SQL qui affiche les infos de la fiche correspondante au lien cliqué 
//==============================================================================

$select = "select * FROM logiciels where id"; // On selectionne seulement la ligne qui correspond au logiciel choisi.
$result = mysql_query($select)  or die ('Erreur : '.mysql_error() );
$row= mysql_fetch_row($result);  // mysql_fetch_row genere un tableau correspondant a la ligne selectionnée de la base.
// Les informations sont accessibles par $row["0"], $row["6"], $row["5"] les n° correspondent a leur ordre dans la table,
// 0 = id, 6 = nom (6è position dans la table) etc....
// ===================================================
// Affichage de la fiche dans un tablea&u dynamique 
// ===================================================
  echo "<table width='65%' class='tabmodifs' bgcolor='#FFFFFF' border='2' cellspacing='0' cellpadding='2' align='center'>\n";
// première ligne on affiche le titre "Fiche logicielle" dans 2 colonnes fusionnées.
        echo "<tr text-align='center'>";
        echo "<td colspan='2' bgcolor='#FF9900'><h2> Fiche logicielle </h2></td>";
        echo "</tr>\n";
// lecture et affichage des résultats sur 2 colonnes, 1 résultat par lot de 2 lignes.    
  echo "<tr bgcolor='#FFFFFF' text-align='center'>";
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche'><strong class='echec'> N° d'enregistrement: </strong><strong>" .$row['0']."</strong></td>"; // le n° d'enregistrement.
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche-droite'><strong class='echec'> Date d'enregistrement: </strong><strong>" .$row['1']."</strong></td>"; // la date d'enregistrement.
  echo "<tr>";
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche'><strong>Groupe: </strong>" .$row['2']."</td>"; // affiche le groupe du logiciel 
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche-droite'><strong>Catégorie: </strong>" .$row['3']."</td>"; // affiche la catégorie du logiciel 
  echo "</tr>\n";
  echo "<tr>";
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche'><strong>Source: </strong>" .$row['4']."</td>"; // affiche la source du logiciel 
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche-droite'><strong>Editeur: </strong>" .$row['5']."</td>"; // affiche l'éditeur du logiciel 
  echo "</tr>\n";
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche'><strong>Nom: </strong><strong class='echec'>" .$row['6']."</strong></td>"; // affiche le nom du logiciel 
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche-droite'><strong>Ligne du produit: </strong>" .$row['7']."</td>"; // affiche le nom (interne) de la ligne produit
  echo "</tr>\n";
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche'><strong>Socle: </strong>" .$row['8']."</td>"; // affiche le socle nécessaire pour son installation
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche-droite'><strong>Référence DSI: </strong>" .$row['9']."</td>"; // affiche la référence DSI (cat, ref etc...) 
  echo "</tr>\n";
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche'><strong>Standard DSI: </strong>" .$row['10']."</td>"; // affiche le standard de la DSI
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche-droite'><strong>Type de licence: </strong>" .$row['11']."</td>"; // affiche le type de licence (flottante, etc...) 
  echo "</tr>\n";
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche'><strong>Version standard: </strong>" .$row['12']."</td>"; // affiche la version utilisée en standard à TM
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche-droite'><strong>Compatibilité XP: </strong>" .$row['13']."</td>"; // affiche la compatibilité avec XP ou pas 
  echo "</tr>\n";
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche'><strong>Versions en exploitation: </strong>" .$row['14']."</td>"; // affiche le nombre de versions en exploitation
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche-droite'><strong>Type de déploiement: </strong>" .$row['15']."</td>"; // affiche le type de déploiement 
  echo "</tr>\n";
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche'><strong>Type d'installation: </strong>" .$row['16']."</td>"; // affiche le type d'installation 
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche-droite'><strong>Domaine: </strong>" .$row['17']."</td>"; // affiche le domaine d'application
  echo "</tr>\n";
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche'><strong>Fonctionnalité: </strong>" .$row['18']."</td>"; // affiche une courte description de sa fonctionnalité 
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche-droite'><strong>Description: </strong>" .$row['19']."</td>"; // affiche une description plus détaillée 
  echo "</tr>\n";
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche'><strong>Instructions: </strong>" .$row['20']."</td>"; // affiche les instructions particulières s'il y en a
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche-droite'><strong>Pré-requis: </strong>" .$row['21']."</td>"; // affiche les pré-requis nécessaires a son installation
  echo "</tr>\n";
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche'><strong>Référent métier: </strong>" .$row['22']."</td>"; // affiche le référent métier de l'application 
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche-droite'><strong>Commentaires: </strong>" .$row['23']."</td>"; // affiche des commentaires s'il y en a 
  echo "</tr>\n";
  echo "</table>\n";
    // fin du tableau.
  echo "<p></p>\n";
mysql_close();
?>
    </form>
      <table width="80%"  border="0" align="center" cellpadding="4" cellspacing="0">
        <tr>
          <td width="100%" colspan="3" align="center"><img src="boutons-catalogue/valider-modification.png" width="150" height="21" onClick="document.location.href='insert_modifs.php'"></td>
        </tr>
  </table>
      <table width="80%"  border="0" align="center" cellpadding="4" cellspacing="0">
        <tr>
          <td colspan="3" align="center"><a href="index.php"><img src="boutons-catalogue/accueil.png" alt="Retour &agrave; la page d'accueil" width="62" height="21" border="0" /></a>&nbsp; <a href="liste.php"><img src="boutons-catalogue/afficher-catalogue.png" alt="Afficher la liste des logiciels du catalogue" width="139" height="21" border="0" /></a>&nbsp; <a href="fiche_ajout.php"><img src="boutons-catalogue/ajouter.png" alt="Ajouter un logiciel au catalogue" width="116" height="21" border="0" /></a>&nbsp;<a href="rechercher.php"><img src="boutons-catalogue/chercher-fiche.png" alt="Chercher un logiciel dans le catalogue" width="128" height="21" border="0" /></a>&nbsp;<a href="javascript:history.go(-1)"><img src="boutons-catalogue/retour.png" alt="Retour &agrave; la page pr&eacute;c&eacute;dente" width="58" height="21" border="0" /></a></td>
        </tr>
        <tr>
          <td align="center" width="35%">&nbsp;</td>
          <td align="center" bgcolor="#E5E5E5" width="30%">
<?
echo "Mis &agrave; jour le: ";
echo date("d - m - Y");
?>
          </td>
          <td align="center" width="35%">&nbsp;</td>
        </tr>
      </table>
  </body>
</html>
<?
}
else // le mot de passe n'est pas bon
{
// On affiche la zone de texte pour rentrer le mot de passe.
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
        <title> Page protégée par mot de passe </title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
		<link href="scripts_styles/form.css" rel="stylesheet">
    </head>
    <body>
<h1 align="center"> Cette page est réservée <br />
					aux administrateurs uniquement ! </h1>
<h3 align="center" class="echec"> Veuillez entrer le login et mot de passe : </h3>
	<p>&nbsp;</p>
	<table align="center" width="500px"><tr><td>
	<form action="modification.php" name="authentification" method="post">
	<p align="center"><input type="text" name="login" /></p>
<script type="text/javascript" language="JavaScript">document.authentification.login.focus();</script>
	<p align="center"><input type="password" name="mot_de_passe" /></p>
	<p align="center"><input type="submit" name="valider" value="Valider"></p>
	</form>
	</td></tr></table>
<?
$_GET['id'] = '$id'; // On transmet la variable id de la fiche sélectionnée
?>
    </body>
</html>
<?
} // Fin du else
?>
Elle est visible sur: http://txiki.free.fr (afficher le catalogue, cliquer sur le dernier de la première page paexemple). C'est la première fiche de la table qui s'affiche (le n°1 n'existe pas).
A force de tripatouiller je ne sais plus où j'en suis.
Si quelqu'un pouvait me regarder où m'orienter sur mon erreur ? ce serait super cool.
J'ai regardé un tas de tutos mais en vain !
Merci d'avance pour votre aide. 9a commence a devenir urgent (c'est pour ma boite et je pédale dans la choucroute, graaaaave !).

Le bonheur est la seule chose que l'on peut donner sans l'avoir.

5 réponses

sidarks Messages postés 15 Date d'inscription   Statut Membre Dernière intervention  
 
Salut,

bon j'ai pas regardé le code encore, mais juste en regardant l'adresse ( sur un serveur Free) et si tu fais tes tests sur ce serveur, il est possible que tu ais oublié de mettre un dossier "sessions" vide à la racine de ton site..
0
txiki Messages postés 6596 Date d'inscription   Statut Contributeur Dernière intervention   521
 
Salut sidarks ,
Non, non, ce dossier existe bien et il contient même des fichiers comme ci-dessous (avec plein de chiffres).
sess_0a786f70b21ac4cc9ec8aa49...............
Moi, je fais les tests en local.
Pourtant cette façon de protéger la page (avec le session start puis les login et pass enregistrés avant la page cahé me convenait bien car il n'y aura que 3/4 personnes max pour utiliser ces fonctions de suppression, modifs ajout).
Le reste doit etre disponible pour tous les visiteurs de la boite.
Ce que je ne m'explique pas c'est que je vois l'id 206 sur la barre d'url (en cliquant sur le lien modifier de la dernière fiche de la première page dans la liste) et qu'en validant (login et pass) tout disparait. Je parle la en local car chez free il ne m'affiche pas de la même façon càd par ordre croissant de nom
En fait, il est là mon Pb.
Ce
$_GET['id'] = '$id';
je ne sais pas ou le mettre (a plusieurs endroits de la page mais où (comme il s'agit de 2 pages en 1...)
Je remet à jour les pages chez free tout de suite.
0
sidarks Messages postés 15 Date d'inscription   Statut Membre Dernière intervention   > txiki Messages postés 6596 Date d'inscription   Statut Contributeur Dernière intervention  
 
Bon désolé je suis débutant également en PHP donc je vais essayer de t'aider dans la mesure de mes connaissances^^

deja un truc pourquoi les autres variables que tu récupères sont avec la méthode POST alors que pour récupérer l'id tu utilises la method GET
donc regarde si tu as bien mis la méthode GET pour le formulaire envoyant l'id...

ensuite une de tes requetes :
$select = "select * FROM logiciels where id";


il doit manquer quelque chose dans ta requete donc essaie comme ceci :
$select = "select * from logiciels where id= '$id' ";


voila j'espère avoir pu t'aider
0
txiki Messages postés 6596 Date d'inscription   Statut Contributeur Dernière intervention   521 > txiki Messages postés 6596 Date d'inscription   Statut Contributeur Dernière intervention  
 
Salut sidarks,
La methode post permet de ne pas voir les login et pass dans l'url (embetant non !). On ne passe jamais jamais les login en get.

il doit manquer quelque chose dans ta requete donc essaie comme ceci :

$select = "select * from logiciels where id= '$id' ";

Excellente remarque: seulement ça me mettait undefined id en mettant le ='$id'; donc je l'ai viré.

Mais le Pb demeure entier. On voit le bon id jusqu'au moment de valider le formulaire login. C'est a ce moment que l'id disparait ( ? ? ?)
0
Stringman621 Messages postés 1308 Date d'inscription   Statut Membre Dernière intervention   340
 
Salut l'ami !

Je ne sait pas si je me trouvais dans la partie de code qui te poser problème, mais j'ai vu que tu perdais une variable en GET lors de la validation de ton formulaire et il me semble avoir vu un leger oubli.

Tu mets dans ta balise form :
<form action="modification.php" name="authentification" method="post">


Mais lorsque tu valide ton formulaire tu lui demande de "recharger" la page modification.php sans la variable GET a la suite don essaie de faire ca :

<form action="modification.php?id=.$GET['id']." name="authentification" method="post">


Enfin avec quelques modif' au niveau des apostrophes ;)

Dis moi si ca te convient !

Tchô !
0
txiki Messages postés 6596 Date d'inscription   Statut Contributeur Dernière intervention   521
 
Salut Stringman621,
Tout d'abord merci pour vos réponses !
Un petit changement après la modif. Maintenant dans l'url (avant de valider) je vois ceci:
http://127.0.0.1/Catalogue/modification.php?id=206
Après validation, voici ce que je vois:
http://127.0.0.1/Catalogue/modification.php?id='.$_GET['id'].'
Je n'y comprends plus rien.

J'ai viré des <?
$_GET['id'] = '$id'; // On transmet la variable id de la fiche sélectionnée
?> que j'avais mis un peu partout.
0
Stringman621 Messages postés 1308 Date d'inscription   Statut Membre Dernière intervention   340
 
Désolé je n'ai pas été très explicite (woah quel vocabulaireuhhh :-p )

Alors exactement il faut mettre ca :

<form action="modification.php?id=<? $GET['id'] ?>" name="authentification" method="post">


Désolé encore une fois

Di moi si LA ca te va loool !
0
txiki Messages postés 6596 Date d'inscription   Statut Contributeur Dernière intervention   521
 
??? voici ce que j'ai dans la barre url de Firefox avec cette méthode:

modification.php?id=%3Cbr%20/%3E%3Cb%3ENotice%3C/b%3E:%20%20Undefined%20variable:%20%20GET%20in%20%3Cb%3Eg:\sites%20web\txiki\modification.php%3C/b%3E%20on%20line%20%3Cb%3E153%3C/b%3E%3Cbr%20/%3E
Et bien sur j'ai toujours la première fiche de la table au lieu de la 10è de la première page
0

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

Posez votre question
Stringman621 Messages postés 1308 Date d'inscription   Statut Membre Dernière intervention   340
 
Encore désolé j'ai oublié le underscore entre $ et GET
Si tu regarde bien dans ton URL tu trouve :
notice undefined variable GET et les %20% sont les espaces

;)
0
txiki Messages postés 6596 Date d'inscription   Statut Contributeur Dernière intervention   521
 
Je vais péter un cable (il va passer par la fenetre (ce P***** d'ordi de ****)

Voici ce que j'ai maintenant:
http://127.0.0.1/Catalogue/modification.php?id=
Il l'a encore perdu l'id en cours de route (après validation mais avec une fiche détaillée vide)
Je te refile le code tel qui l'est actuellement:
<?
session_start();  // Démarrage de la session. A placer obligatoirement avant tout code html.

$_SESSION['connect'] = 0; //initialise la variable 'connect'.

if (isset($_POST['mot_de_passe']) AND isset($_POST['login'])) // Si les variables existent.
{
        $mot_de_passe = $_POST['mot_de_passe'];
        $login = $_POST['login'];  //On récupère les données envoyées par la méthode POST du formulaire d'identification.
}
else // Les variables n'existent pas encore.
{
        $mot_de_passe = "";
        $login = ""; // On crée des variables $mot_de_passe  et $login vides.
}

if (($mot_de_passe == "tintin" AND $login == "txiki") OR ($mot_de_passe == "******" AND $login == "******")OR ($mot_de_passe == "******" AND $login == "******") OR ($mot_de_passe == "******" AND $login == "******"))
// Si le mot de passe et le login sont bons (valable pour 4 utilisateurs). Plusieurs identifiants et mots de passe.

{
		$_SESSION['connect'] = 1;  // Change la valeur de la variable connect. 
		$_SESSION['login'] = $login;  // Permet de récupérer le login afin de personnaliser la navigation.
$_GET['id'] = '$id'; // On transmet la variable id de la fiche sélectionnée
// Si le couple login/pass est correct, on affiche la page cachée.
// ****************************************************************
?>
<!-- page cachée que l'on va afficher si le couple login/pass est OK --> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
  <title>Fiche d&eacute;taill&eacute;e du logiciel</title>
  <link href="scripts_styles/form.css" rel="stylesheet">
  </head>
  <body>
<table border="0" align="center" cellpadding="0" cellspacing="0" id="titre">
	<tr>
    <td id="td-gauche">&nbsp;</td>
    <td id="td-milieu"><h1> Logiciel a modifier</h1></td>
    <td id="td-droit">&nbsp;&nbsp;</td>
	</tr>
</table>
      <br />
<?
mysql_pconnect('localhost','root','') or die ("Impossible de se connecter à MySQL"); // On se connecte a mysql.
mysql_select_db('txiki') or die("Impossible de sélectionner la base de données"); // On choisi la base de données.

//==============================================================================
// requête SQL qui affiche les infos de la fiche correspondante au lien cliqué 
//==============================================================================
$id = $_GET['id'];
$select = "select * FROM logiciels WHERE id='$id'"; // On selectionne seulement la ligne qui correspond au logiciel choisi.
$result = mysql_query($select)  or die ('Erreur : '.mysql_error() );
$row= mysql_fetch_row($result);  // mysql_fetch_row genere un tableau correspondant a la ligne selectionnée de la base.
// Les informations sont accessibles par $row["0"], $row["6"], $row["5"] les n° correspondent a leur ordre dans la table,
// 0 = id, 6 = nom (6è position dans la table) etc....

// ===================================================
// Affichage de la fiche dans un tablea&u dynamique 
// ===================================================
  echo "<table width='65%' class='tabmodifs' bgcolor='#FFFFFF' border='2' cellspacing='0' cellpadding='4' align='center'>\n";
// première ligne on affiche le titre "Fiche logicielle" dans 2 colonnes fusionnées.
        echo "<tr text-align='center'>";
        echo "<td colspan='2' bgcolor='#FF9900'><h2> Fiche détaillée </h2></td>";
        echo "</tr>\n";
// lecture et affichage des résultats sur 2 colonnes, 1 résultat par lot de 2 lignes.    
  echo "<tr bgcolor='#FFFFFF' text-align='center'>";
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche'><strong class='echec'> N° d'enregistrement: </strong><strong>" .$row['0']."</strong></td>"; // le n° d'enregistrement.
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche-droite'><strong class='echec'> Date d'enregistrement: </strong><strong>" .$row['1']."</strong></td>"; // la date d'enregistrement.
  echo "<tr>";
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche'><strong>Groupe: </strong>" .$row['2']."</td>"; // affiche le groupe du logiciel 
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche-droite'><strong>Catégorie: </strong>" .$row['3']."</td>"; // affiche la catégorie du logiciel 
  echo "</tr>\n";
  echo "<tr>";
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche'><strong>Source: </strong>" .$row['4']."</td>"; // affiche la source du logiciel 
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche-droite'><strong>Editeur: </strong>" .$row['5']."</td>"; // affiche l'éditeur du logiciel 
  echo "</tr>\n";
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche'><strong>Nom: </strong><strong class='echec'>" .$row['6']."</strong></td>"; // affiche le nom du logiciel 
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche-droite'><strong>Ligne du produit: </strong>" .$row['7']."</td>"; // affiche le nom (interne) de la ligne produit
  echo "</tr>\n";
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche'><strong>Socle: </strong>" .$row['8']."</td>"; // affiche le socle nécessaire pour son installation
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche-droite'><strong>Référence DSI: </strong>" .$row['9']."</td>"; // affiche la référence DSI (cat, ref etc...) 
  echo "</tr>\n";
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche'><strong>Standard DSI: </strong>" .$row['10']."</td>"; // affiche le standard de la DSI
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche-droite'><strong>Type de licence: </strong>" .$row['11']."</td>"; // affiche le type de licence (flottante, etc...) 
  echo "</tr>\n";
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche'><strong>Version standard: </strong>" .$row['12']."</td>"; // affiche la version utilisée en standard à TM
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche-droite'><strong>Compatibilité XP: </strong>" .$row['13']."</td>"; // affiche la compatibilité avec XP ou pas 
  echo "</tr>\n";
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche'><strong>Versions en exploitation: </strong>" .$row['14']."</td>"; // affiche le nombre de versions en exploitation
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche-droite'><strong>Type de déploiement: </strong>" .$row['15']."</td>"; // affiche le type de déploiement 
  echo "</tr>\n";
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche'><strong>Type d'installation: </strong>" .$row['16']."</td>"; // affiche le type d'installation 
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche-droite'><strong>Domaine: </strong>" .$row['17']."</td>"; // affiche le domaine d'application
  echo "</tr>\n";
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche'><strong>Fonctionnalité: </strong>" .$row['18']."</td>"; // affiche une courte description de sa fonctionnalité 
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche-droite'><strong>Description: </strong>" .$row['19']."</td>"; // affiche une description plus détaillée 
  echo "</tr>\n";
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche'><strong>Instructions: </strong>" .$row['20']."</td>"; // affiche les instructions particulières s'il y en a
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche-droite'><strong>Pré-requis: </strong>" .$row['21']."</td>"; // affiche les pré-requis nécessaires a son installation
  echo "</tr>\n";
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche'><strong>Référent métier: </strong>" .$row['22']."</td>"; // affiche le référent métier de l'application 
  echo "<td width='50%' bgcolor='#F0F0F0' class='td-fiche-droite'><strong>Commentaires: </strong>" .$row['23']."</td>"; // affiche des commentaires s'il y en a 
  echo "</tr>\n";
  echo "</table>\n";
    // fin du tableau.
  echo "<p></p>\n";
mysql_close();
?>
    </form>
      <table width="80%"  border="0" align="center" cellpadding="4" cellspacing="0">
        <tr>
          <td width="100%" colspan="3" align="center"><img src="boutons-catalogue/valider-modification.png" width="150" height="21" onClick="document.location.href='insert_modifs.php'"></td>
        </tr>
  </table>
      <table width="80%"  border="0" align="center" cellpadding="4" cellspacing="0">
        <tr>
          <td colspan="3" align="center"><a href="index.php"><img src="boutons-catalogue/accueil.png" alt="Retour &agrave; la page d'accueil" width="62" height="21" border="0" /></a>&nbsp; <a href="liste.php"><img src="boutons-catalogue/afficher-catalogue.png" alt="Afficher la liste des logiciels du catalogue" width="139" height="21" border="0" /></a>&nbsp; <a href="fiche_ajout.php"><img src="boutons-catalogue/ajouter.png" alt="Ajouter un logiciel au catalogue" width="116" height="21" border="0" /></a>&nbsp;<a href="rechercher.php"><img src="boutons-catalogue/chercher-fiche.png" alt="Chercher un logiciel dans le catalogue" width="128" height="21" border="0" /></a>&nbsp;<a href="javascript:history.go(-1)"><img src="boutons-catalogue/retour.png" alt="Retour &agrave; la page pr&eacute;c&eacute;dente" width="58" height="21" border="0" /></a></td>
        </tr>
        <tr>
          <td align="center" width="35%">&nbsp;</td>
          <td align="center" bgcolor="#E5E5E5" width="30%">
<?
echo "Mis &agrave; jour le: ";
echo date("d - m - Y");
?>
          </td>
          <td align="center" width="35%">&nbsp;</td>
        </tr>
      </table>
  </body>
</html>
<?
}
else // le mot de passe n'est pas bon
{
// On affiche la zone de texte pour rentrer le mot de passe.
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
        <title> Page protégée par mot de passe </title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
		<link href="scripts_styles/form.css" rel="stylesheet">
    </head>
    <body>
<h1 align="center"> Cette page est réservée <br />
					aux administrateurs uniquement ! </h1>
<h3 align="center" class="echec"> Veuillez entrer le login et mot de passe : </h3>
	<p>&nbsp;</p>
	<table align="center" width="500px"><tr><td>
	<form action="modification.php?id=<? $_GET['id'] ?>" name="authentification" method="POST">
	<p align="center"><input type="text" name="login" maxlength="10" /></p>
<script type="text/javascript" language="JavaScript">document.authentification.login.focus();</script>
	<p align="center"><input type="password" name="mot_de_passe" maxlength="10" /></p>
	<p align="center"><input type="submit" name="valider" value="Valider"></p>
	</form>
	</td></tr></table>
    </body>
</html>
<?
} // Fin du else
?>


Je sens que je suis vraiment très près mais où est la boulette ?
RAPPEL: la page est constituée de 2 pages en fait (le login avec le formulaire à la fin et la fiche au milieu).
En local (pas chez free hein !)
0
Stringman621 Messages postés 1308 Date d'inscription   Statut Membre Dernière intervention   340
 
J'ai teste ton script chez moi en mettant une valeur bidon en GET et j'ai en effet comme toi :

http://localhost/modification.php?id=

Je pense avoir trouver (enfin en modifiant ce truc la valeur passé bien en GET), j'ai transformer :

<form action="modification.php?id=<? $_GET['id'] ?>" name="authentification" method="POST">

En:
<? echo '<form action="test.php?id='.$id.'" name="authentification" method="POST">'; ?>

Voilo, voilou, si ca ne marche pas je viens t'aider a balancer ton PC ;)

Au fait, ya un truc que j'ai pas compris, ya un moment tu a ecris ca :

$_GET['id'] = '$id'
Donc dans ta variable $_GET['id'], tu auras $id et non la valeur de $id (supprime les " ' ")

Et aussi cette affectation ne me semble pas utile car les seules valeurs qui seront envoyées en GET sont :
- celles d'un formulaire
ou
- celle ajouter dans l'URL (comme dans la balise form)

Tchô
0
txiki Messages postés 6596 Date d'inscription   Statut Contributeur Dernière intervention   521
 
Salut Stringman621,
Tu viens quand tu veux pour m'aider a le jeter par la fenetre !
Maintenant j'ai une erreur supplémentaire a la ligne que j'ai modifiée justement ! Donc, ton truc de echo (j'y avais pensé aussi) ne marche pas.
Galèèèèèère ! Misèèèère de misèèèèère !
0
brainy
 
Bonjour, je n'ai lu tout les commentaires de nos amis mais g juste une remarque à propos de :<form action="modification.php?id=<? $_GET['id'] ?>" ...
je trouve que c normal que id ne prends rien il faut ecrire le get avec un echo <form action="modification.php?id=<? echo $_GET['id']; ?>"
a mes connaissances si dans une page php on ecrit:
$_GET['id']; rien ne sera affiché.
0
Stringman621 Messages postés 1308 Date d'inscription   Statut Membre Dernière intervention   340
 
Exact ce détail m'avait échapper.

Retente alors comme ca et dit s'il faut reelement que je me déplace pour aller balancer ton PC par la fenetre ;)

Tchô !
0