Bonjour,
je refais le message avec les balises "code" :
j'avais fait il y a 1 an, sur un site une partie du style "admin" ou le client du site avait un acces prive sur une page et pouvait telecharger des documents a mettre a disposition de ses employés .
le directeur clique sur un lien du genre "acces prive directeur pour telecharger document" et la avant d'arriver sur la page ou il y a le module lui permettant de telecharger des documents, il doit d'abord rentrer un login + password.
de la meme facon, l'employe peut cliquer sur un lien du genre "acces privé employé pour consulter les documents", ou il pourra donc consulter les documents telecharges par l'employeur.
ceci fonctionnait bien il y a 1 an.
mais pendant 8 à 12 mois cela n'a pas ete utilisé.
aujourd'hui je refais les mises a jour de ce site, le directeur veut de nouveau utiliser cette fonctionnalite,
or cela ne fonctionne plus comme avant, sans avoir fait aucun changement.
j'avais trouve sur le net un script Php "mcPass.php" pour proteger justement cet acces par login et password.
aujourd'hui, je suis obligé de supprimer l'appel de ce script pour que cela fonctionne, je n'ai donc plus l'acces par login et password
j'ai lu qu'avec les dernieres versions de Php , il y avait eu un changement important au niveau de la variable "register_globals".
j'ai eu beau tourner le code dans tous les sens, et vu que l'on m'avait aidé a faire cette partie la car je ne suis pas experte en php, je n'arrive pas a trouver et comprendre le probleme
voici le fichier appelé quand on clique sur "acces prive telecharger un document"
Code :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
<?
$ok = explode(":",$HTTP_COOKIE_VARS["mcPass"]);
if(empty($ok[0])){ header ("location:http://www.adressedusite.com/private/mcPass.php?go=$PHP_SELF"); }
?>
<?
include("head.inc.php");
?>
<table width="100%" height="80" border="0" cellspacing="5">
<tr>
<td align="center"><b><a href="document.php">Télécharger un nouveau document</a></b></td>
</tr>
</table>
<?
include("bottom.inc.php");
?> |
et je dois enlever la partie
Code :
1 2 3 4 5
|
<?
$ok = explode(":",$HTTP_COOKIE_VARS["mcPass"]);
if(empty($ok[0])){ header ("location:http://www.adressedusite.com/private/mcPass.php?go=$PHP_SELF"); }
?> |
qui fait appel au fichier mcPass.php pour traiter login et password
je mets ci dessous le fichier mcPass.php
merci de votre aide
sand
fichier mcPass.php :
Code :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205
|
<?
// mcPass 1.0 - copyright 2002 Marc Cagninacci - <a href="mailto:marc@phpforums.net">marc@phpforums.net</a> - <a href="http://www.phpforums.net" target="_blank">http://www.phpforums.net</a>
// Configuration MySQL - Set this
$host="sql01.zarcrom.net";
$login="lelogindelabase";
$pass="lepassworddelabase";
$base="lenomdelabase";
// Language - Set this
$lErrLog= "Nom Incorrect"; // "Wrong Login";
$lErrPass= "Mot de Passe Incorrect"; // "Wrong Password";
$lLogin= "Nom"; // "Login";
$lPass= "Mot de Passe"; // "Password";
$lValider= "Valider"; // "Submit";
/* --------------------------------------------------------------------------------------
- Envoyez ce fichier mcPass.php à la RACINE de votre site
Upload this file mcPass.php in the ROOT of your site
- Copiez les quatre lignes suivantes tout en haut de chaque page que vous voulez protéger:
Paste the four lines below at the very top of each page you want to protect:
-----------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------
<?
$ok = explode(":",$HTTP_COOKIE_VARS["mcPass"]);
if(empty($ok[0])){ header ("location:http://$HTTP_HOST/mcPass.php?go=$PHP_SELF"); }
?>
-----------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------
- Naviguez jusqu'à <a href="http://www.votresite.com/mcPass.php" target="_blank">http://www.votresite.com/mcPass.php</a> et saisissez un nom et un mot de passe.
Go to <a href="http://www.yoursite.com/mcPass.php" target="_blank">http://www.yoursite.com/mcPass.php</a> and choose a login and a password
-----------------------------------------------------------------------------------------
----------Ne rien modifier en dessous - Don't modify anything below ---------------------
---------------------------------------------------------------------------------------*/
if(!$go)
{
$connect= mysql_connect($host,$login,$pass);
mysql_select_db($base, $connect);
$result = mysql_list_tables ($base);
$i = 0;
while ($i < mysql_num_rows($result)) {
$tb_names[$i] = mysql_tablename ($result, $i);
if ($tb_names[$i]=="mcpass_tbl") $table=1;
$i++;
}
if ($table==1)
{
$install= 'Running';
}
}
if((isset($SubInst))&&($b==md5($base)))
{
$connect= mysql_connect($host,$login,$pass);
mysql_select_db($base, $connect);
$query="DROP TABLE IF EXISTS mcpass_tbl;";
mysql_query($query);
$query="CREATE TABLE mcpass_tbl (
user varchar(20) NOT NULL default '',
pwd varchar(20) NOT NULL default '',
KEY user (user)
) TYPE=MyISAM;";
mysql_query($query);
$query="insert into mcpass_tbl values('$user', '$pwd')";
mysql_query($query, $connect);
$query="select * from mcpass_tbl";
$res=mysql_query($query);
$aff=mysql_fetch_array($res);
}
function mcPassCookie ($user,$pwd)
{
SetCookie("mcPass", "$user:$pwd");
}
if(isset($submit))
{
$connect= mysql_connect($host,$login,$pass);
mysql_select_db($base, $connect);
$query="select * from mcpass_tbl where user='$user'";
$res=mysql_query($query);
$verif=mysql_fetch_array($res);
if($pwd==$verif[pwd] && mysql_num_rows($res)!=0)
{
mcPassCookie($user,$pwd);
?>
<SCRIPT TYPE="text/javascript" LANGUAGE="JavaScript">
document.location.replace("<? echo $go.''; ?>");
</script>
<?
}
elseif (mysql_num_rows($res)==0) $Err1=$lErrLog;
else $Err2=$lErrPass;
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Acces Directeur </title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<META HTTP-EQUIV="Expires" CONTENT="Fri, Jan 01 1900 00:00:00 GMT">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">
<style type="text/css">
<!--
a:actif { font-family: Verdana; color: black; text-decoration: none}
a:link { font-family: Verdana; color: black; text-decoration: none}
a:visited { font-family: Verdana; color: black; text-decoration: none}
a:hover { font-family: Verdana; color: white; text-decoration: none}
-
</style>
</head>
<body bgcolor="#C0C0C0" text="black">
<p align="right"><font face="verdana" size="5" color="black">Accès Directeur </a>
<?
if((!$go)&&(!$install)) echo ' - Set Up';
if ((!$go)&&(isset($install)))
{
echo ' is running.</font></p><hr>';
echo '<p align="right"><a href="http://www.lesite.com"><b>OK</b></a></p>';
echo '</body></html>';
exit();
}
?>
</font>
</p><hr>
<form action="mcPass.php" method="get">
<table align="right">
<tr>
<td align="right"><font face="Verdana, Arial, Helvetica, sans-serif" size="2"><b>
<?
if(isset($Err1))
{
echo '<font color="red" size="2" face="verdana"><b>'.$Err1.'! </b></font>';
}
echo $lLogin;
?>
: </b></font>
</td>
<td>
<?
if (isset($aff[0])) echo '<font color="red" size="2" face="verdana"><b>'.$aff[0].'</b></font>';
else echo '<input type="text" name="user" value="'.$user.'">';
?>
</td>
</tr>
<tr>
<td align="right"><font face="Verdana, Arial, Helvetica, sans-serif" size="2"><b>
<?
if(isset($Err2))
{
echo '<font color="red" size="2" face="Verdana"><b>'.$Err2.'! </b></font>';
}
echo $lPass;
?>
:</b></font>
</td>
<td>
<?
if (isset($aff[1])) echo '<font color="red" size="2" face="verdana"><b>'.$aff[1].'</b></font>';
else echo '<input type="password" name="pwd">';
?>
</td>
</tr>
<tr>
<td>
</td>
<td>
<?
if((!$go)&&(!$SubInst))
{
echo '<input type="submit" name="SubInst" value="'.$lValider.'">';
echo '<input type="hidden" name="b" value="'.md5($base).'">';
}
elseif(isset($SubInst)) echo '<a href="http://'.$HTTP_HOST.'"><b>OK</b></a>';
else
{
echo '<input type="submit" name="submit" value="'.$lValider.'">';
echo '<input type="hidden" name="go" value="'.$go.'">';
}
?>
</td>
</tr>
</table>
</form>
</body>
</html> |