Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1428 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  faire un lien avec plusieurs variables

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

faire un lien avec plusieurs variables

n°156102
peemousse
Posté le 10-06-2002 à 20:15:49  profilanswer
 

voila j'essaye de faire un systeme de News, Lorsque l'utilisateur ajoute une news , la news est affiché sur une page
pour que l'administrateur la valide.
Seulement voila l'acces a cette page est possible uniquement avec un mot de passe et  un login.
 
<a href=\"validation.php3?idnouv=$idnouv&action=0\">Supprimer</a>
 
ceci est le code pour supprimer la news.
 
Pour insérer des liens vers d'autres pages protégées j'utilise le code suivant :
 
<a href="pageprotege.php3?id=<? echo "$id"; ?>">AUTRE PAGE MEMBRE</a>
 
ou l' $id correspond a l'id qui est attribué  l'utilisateur qui se connecte.
 
QUESTION
 
Comment faire pour mettre dan un seul lien ces 2 contraintes ?
 
exemple
 
voila ce que j'ai essayé de faire sans succès
 
<a href=\"validation.php3?id=<? echo "$id"; ?> idnouv=$idnouv&action=0\">Supprimer</a>

mood
Publicité
Posté le 10-06-2002 à 20:15:49  profilanswer
 

n°156152
antp
Super Administrateur
Champion des excuses bidons
Posté le 10-06-2002 à 21:14:39  profilanswer
 

si t'es dans du php du fais simplement ça :
 
<a href=\"validation.php3?id=$id&idnouv=$idnouv&action=0\">Supprimer</a>
 
non ?
 
PS: Attention à mettre & et pas juste &, en effet le & indique que ce qui suit est un caractère spécial. Même si tous les browsers vont bien l'interprêter, c'est mal, et pas standard.


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°156353
peemousse
Posté le 11-06-2002 à 03:12:04  profilanswer
 

merci bien ....
 
je vais essayer ca demain ...la je suis un peu tro Defonce ....OoPs
 
 
ps: c'est vrai ke j'avais oublié de preciser que c'etait du PhP
 
je vous tiens au corant

n°156354
zion
Plop
Posté le 11-06-2002 à 03:46:17  profilanswer
 

peemousse a écrit a écrit :

merci bien ....
 
je vais essayer ca demain ...la je suis un peu tro Defonce ....OoPs
 
 
ps: c'est vrai ke j'avais oublié de preciser que c'etait du PhP
 
je vous tiens au corant




 
C'est pêché  [:banzai]


---------------
Informaticien.be - Lancez des défis à vos amis
n°156549
peemousse
Posté le 11-06-2002 à 13:22:41  profilanswer
 

je viens d'essayer et ca marche pas.... bizarre
 
j'ai l'erreur suivante :
 
Parse error: parse error, expecting `','' or `';'' in c:\program files\easyphp\www\projetx\validation.php3 on line 81

n°156555
Batman-Fr
powered by caféine
Posté le 11-06-2002 à 13:33:42  profilanswer
 

peemousse a écrit a écrit :

je viens d'essayer et ca marche pas.... bizarre
 
j'ai l'erreur suivante :
 
Parse error: parse error, expecting `','' or `';'' in c:\program files\easyphp\www\projetx\validation.php3 on line 81  




 
si tu fais un echo"<a href="validation.php3?id=$id&idnouv=$idnouv&action=0">Supprimer</a>"; c'est normal car il va croire que ton echo s'arrette a mon caractere rouge et attends donc un ; juste apres ...


---------------
Tout ou rien mais rien que tout ! feed-back : http://forum.hardware.fr/forum2.ph [...] ost=121391
n°156562
peemousse
Posté le 11-06-2002 à 13:39:55  profilanswer
 

ok j'ai corrigé cette erreur ...et ca fonctionne mais ....si je souhaite avoir cette syntaxe
 
echo "<a href=validation.php3?id=<? echo "$id"; ?>&idnouv=$idnouv&action=0>"
 
j'ai la meme errue que précédemment, il doit encore y avoir une histoire de "" ou de ;; mais je vois pas tro ou ?
 
 
Merciii ...

n°156563
youdontcar​e
Posté le 11-06-2002 à 13:41:19  profilanswer
 

echo "<a href=validation.php3?id=" . $id . "&idnouv=$idnouv&action=0>";

n°156569
peemousse
Posté le 11-06-2002 à 13:50:44  profilanswer
 

Cette syntaxe fonctionne, j'ai plus d'erreur , mais j'ai besoin d'afficher le numero d'id ....ce qui n'est pas le cas avec cette
syntaxe:
 
echo "  <a href=validation.php3?id=" . $id . "&idnouv=$idnouv&action=0>Supprimer</a> \n";
 
je voudrais utilser cette syntaxe:
 
<a href="pageprotege.php3?id=<? echo "$id"; ?>">AUTRE PAGE MEMBRE</a>
 
qqchose comme ca :
 
echo "<a href=validation.php3?id=<? echo "$id"; ?>&idnouv=$idnouv&action=0>"  
 
 
qui ici ne fonctionne pas ....:??:

n°156570
antp
Super Administrateur
Champion des excuses bidons
Posté le 11-06-2002 à 13:51:19  profilanswer
 

la ligne que j'avais mise au tout début est quand même correcte, non ? :??:


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
mood
Publicité
Posté le 11-06-2002 à 13:51:19  profilanswer
 

n°156573
antp
Super Administrateur
Champion des excuses bidons
Posté le 11-06-2002 à 13:52:14  profilanswer
 

peemousse a écrit a écrit :

 
echo "<a href=validation.php3?id=<? echo "$id"; ?>&idnouv=$idnouv&action=0>"  




 
je vois pas pourquoi tu veux refoutre cet echo en plein milieu :heink:


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°156576
peemousse
Posté le 11-06-2002 à 13:53:51  profilanswer
 

ouais ca fonctionne mais ca affiche pas le numero d'ID,
 
ca fait un lien du style :
 
http://127.0.0.1/validation.php3?i [...] 0&action=0
 
et moi je voudrais:
 
http://127.0.0.1/validation.php3?i [...] 0&action=0
 
 
avec le num d'ID apparent en fait ...

n°156579
antp
Super Administrateur
Champion des excuses bidons
Posté le 11-06-2002 à 13:57:54  profilanswer
 

bhen comme ce que je t'ai donné tout au début ça doit le faire
ou alors c'est que ta variable $id ne contient rien


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°156581
youdontcar​e
Posté le 11-06-2002 à 13:58:47  profilanswer
 

peemousse a écrit a écrit :

je voudrais utilser cette syntaxe:
 
<a href="pageprotege.php3?id=<? echo "$id"; ?>">AUTRE PAGE MEMBRE</a>


il ne te reste plus qu'à modifier l'interpréter de php. j'espère que tu connais bien le C et yacc ?

n°156710
peemousse
Posté le 11-06-2002 à 15:25:43  profilanswer
 

Mais comment se fait-il alors que lorsque j'ecris:
 
<a href="validation.php3?id=<? echo "$id"; ?>">valider</a>  
 
cela fonctionne ?

n°156742
peemousse
Posté le 11-06-2002 à 15:51:10  profilanswer
 

:cry:

n°156745
youdontcar​e
Posté le 11-06-2002 à 15:54:01  profilanswer
 

montre le code qui entoure ton lien ... (oui, le maximum possible).

n°156763
peemousse
Posté le 11-06-2002 à 16:03:19  profilanswer
 

<?
require("conf_membre.php3" );
 
// CONNEXION MYSQL
$db_link = @mysql_connect($sql_serveur,$sql_user,$sql_passwd);
if(!$db_link) {echo "Connexion impossible à la base de données <b>$sql_bdd</b> sur le serveur <b>$sql_server</b><br>Vérifiez les paramètres du fichier conf_membre.php3"; exit;}
 
// SELECTION DE L'ENREGISTREMENT CONTENANT L'ID EN COURS
$requete=mysql_db_query($sql_bdd,"select * from membre where id=\"$id\"",$db_link) or die(mysql_error());
 
// SI L'ID N'EXISTE PAS
if(mysql_num_rows($requete)==0)
        {
        // REDIRECTION PAGE ERREUR
        header("Location:$url_erreur" );
        exit;
        }
 
// DECONNEXION MYSQL
mysql_close($db_link);
?>
 
[ ...... Code HTML .......]
 
<?
echo "$id"; //affiche l'Id de l'utilisateur
 
 
function display_contrib ( $idnouv, $idauteur, $dtsaisi, $lbrubriq, $titre, $texte) {
 
 
 
echo "<CENTER>\n";
echo "  <TABLE WIDTH=95% CELLSPACING=0 BORDER=0 CELLPADDING=0 COLS=4>\n";
echo "    <!-- Ligne d'entête ,contient le titre de la nouvelle -->\n";
echo "    <TR>\n";
echo "      <TD WIDTH='20' BGCOLOR='#2F4162' ALIGN=RIGHT></TD>\n";
echo "      <!-- COL 2 : titre de la nouvelle -->\n";
echo "      <TD BGCOLOR='#2F4162' WIDTH=100%><span class=texte><B>$titre</B> </span></TD>\n";
echo "      <TD BGCOLOR='#2F4162' ALIGN=LEFT></TD>\n";
echo "      <TD WIDTH='20' BGCOLOR='#2F4162'></TD>\n";
echo "    </TR>\n";
echo "    <TR>\n";
echo "      <TD WIDTH=0 BGCOLOR='#526A95'> </TD>\n";
echo "      <TD BGCOLOR='#526A95' COLSPAN=2><span class=texte>$lbrubriq</I></span>\n";
echo "        <span class=texte><br>\n";
echo "        $texte</span>\n";
echo "   <span class=texte><br>";
echo "  <a href=validation.php3?id=$id&idnouv=$idnouv&action=0>Supprimer</a> \n";
echo "  <a href=validation.php3?id=$id&idnouv=$idnouv&action=1>Valider</a></span>\n";
echo "        <span class=texte><P align='RIGHT'><i>Posté\n";
echo "          le $dtsaisi par <B><A HREF='mailto:$idauteur'>$idauteur</A></B></i>\n";
echo "          </span>\n";
echo "      </TD>\n";
echo "      <TD WIDTH=4 BGCOLOR='#526A95'> </TD>\n";
echo "    </TR>\n";
echo "  </TABLE>\n";
echo "</CENTER><br>\n";
} ;
?>
 
<BODY>
.
.
</html>
 
 
j'ai aussi le fichier Login.php3 qui cree le numero d' ID et qui assure l'authentification.
 
pour acceder à une page "protégé" je dois utiliser le code suivant:
<a href="validation.php3?id=<? echo "$id"; ?>">valider</a>  
 
 
 
<?
require("conf_membre.php3" );
 
/*------------------------------------------------
 
-----------------*/
/* PROGRAMME PRINCIPAL   */
/*-----------------------------------------------------------------*/
 
// CONNEXION A LA BASE DE DONNEE
$db_link = @mysql_connect($sql_serveur,$sql_user,$sql_passwd);
if(!$db_link) {echo "Connexion impossible à la base de données <b>$sql_bdd</b> sur le serveur <b>$sql_server</b><br>Vérifiez les paramètres du fichier conf.php3"; exit;}
 
// ON SELECTIONNE L'ENREGISTREMENT CONTENANT LE LOGIN ET
// MOT DE PASSE SAISIS A LA PAGE INDEX.HTM
$requete=mysql_db_query($sql_bdd,"select pseudo,passe from membre where pseudo=\"$pseudo_membre\" and passe=\"$passe_membre\"",$db_link) or die(mysql_error());
 
// SI AUCUN ENREGISTREMENT NE CORRESPOND
if(mysql_num_rows($requete)==0)
 {
 // REDIRECTION VERS LA PAGE ERREUR
 header("Location:$url_erreur" );
 }
 
// SI LE LOGIN ET MOT DE PASSE SONT EXACTES  
else
 {
 // CREATION D'UN IDENTIFIANT ALEATOIRE
 $taille = 20;
 $lettres = "abcdefghijklmnopqrstuvwxyz0123456789";
 srand(time());
 for ($i=0;$i<$taille;$i++)
  {
  $id.=substr($lettres,(rand()%(strlen($lettres))),1);
  }
   
 // MISE A JOUR DE L'IDENTIFIANT DANS LA TABLE  
 $requete=mysql_db_query($sql_bdd,"update membre set id=\"$id\" where pseudo=\"$pseudo_membre\" and passe=\"$passe_membre\"",$db_link) or die(mysql_error());
 
 // REDIRECTION VERS UNE PAGE PROTEGEE AVEC L'IDENTIFIANT SERVANT DE CLE
 header("Location:zonemembre.php3?id=$id" );
 }  
 
// DECONNEXION MYSQL
mysql_close($db_link);
?>
 
Si il te manque des infos dit le moi ....


Message édité par peemousse le 06-11-2002 à 16:10:42
n°156773
youdontcar​e
Posté le 11-06-2002 à 16:07:33  profilanswer
 

* où se situe le <? avant la fonction display_contrib() ?
 
* si tu fais  
  echo $id;  
dedans, ça t'affiche quoi ?

n°156790
peemousse
Posté le 11-06-2002 à 16:13:20  profilanswer
 

Excuse pour la balise <? , je l'ai oublié ....
regarde le poste précédent je l'ai edité ...
 
et si je fais un:
 
 echo "$id";
 
(comme edité dans le post précédent) j'obtiends l'ID de l'utilisateur ....

n°156810
antp
Super Administrateur
Champion des excuses bidons
Posté le 11-06-2002 à 16:19:33  profilanswer
 

essaie de remplacer
echo "  <a href=validation.php3?id=$id&idnouv=$idnouv&action=0>Supprimer</a> \n";
echo "  <a href=validation.php3?id=$id&idnouv=$idnouv&action=1>Valider</a></span>\n";
 
par
echo "  <a href=\"validation.php3?id=$id&idnouv=$idnouv&action=0\">Supprimer</a> \n";
echo "  <a href=\"validation.php3?id=$id&idnouv=$idnouv&action=1\">Valider</a></span>\n";
 
on sait jamais qu'à cause de la non-présence des guillemets le browser aime pas trop...
 
sinon je vois pas où est le problème...


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°156840
peemousse
Posté le 11-06-2002 à 16:34:57  profilanswer
 

en effet c'est etrange car  ca ne fonctionne toujours pas ....
Enfin si ca fonctionne , mais l'utilisateur n'est pas reconnu comme membre...,car comme indiqué dans un précédent post j'ai besoin de l'ID du membre dans le lien de la page.
 
 
http://127.0.0.1/validation.php3?i [...] 0&action=0
 
Par contre ( Ce qui doit etre normal finalement ), lorsque je fais:
 
echo "$id";
 
dans la fonction la ca me renvoie rien du tout.
 
exemple
 
function display_contrib ( $idnouv, $idauteur, $dtsaisi, $lbrubriq, $titre, $texte) {
 
echo "$id";
.
.
.
.
 
}
 
je pense qu'il faudrait que je redefinisse la variable $ID dans la fonction.
 
exemple
 
function display_contrib ( $idnouv, $idauteur, $dtsaisi, $lbrubriq, $titre, $texte) {
 
$ID= ( mettre la commande SQL vers l'ID généré pour ce membre )


Message édité par peemousse le 06-11-2002 à 16:35:51
n°156845
youdontcar​e
Posté le 11-06-2002 à 16:38:11  profilanswer
 

:sweat:
 
si $id est une variable globale, il faut la définir comme telle dans la fonction :
 
function display_contrib()
{
global $id;
  echo $id;
}
 
un des trucs que j'oublie quasiment toujours en php ...

n°156864
peemousse
Posté le 11-06-2002 à 16:49:23  profilanswer
 

Bon merci a tous pour votre aide .... j'ai  pas reussi a faire ce que je voulais faire mais comme je suis pressé par le temps , je vais faire ca d'une maniere différente .....
 
MERCI et A+

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  faire un lien avec plusieurs variables

 

Sujets relatifs
Variables url non comprisesmettre un site pero dans plusieurs moteurs de recherche
acceder aux variables d'environnement en C ?Variables formulaires
blem de script shell Linux ==> export de variables[DEBUTANT] Passer des variables par un formulaire
Variables Sous Windows ??lien Access/SQL Server
installer plusieurs serveurs Apache sur 1 machineComment définir des propriété pour chaque lien en html ?
Plus de sujets relatifs à : faire un lien avec plusieurs variables


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR