kontas Photographe amateur daltonien | Salut a tous,
comme un idiot j'ai mis a jours mon serveur apache via la commande urpmi, toujours comme un idiot je n'ai pas noté les nom des package donc je ne peu les desinstaller.
Depuis cette mise a jours, je n'arrive plus a me connecter a mon site...etant donnée que mes anciennes version de mes sites fonctionne toujours, je me dis que la mise a jours a rendu mon serveur moins tolerent. donc il doit y avoir une erreur dans ma programmation, mais je ne la trouve pas.
le fichier, log.php (formulaire de connexion)
Code :
- <style type="text/css">
- <!--
- -->
- </style>
- <script language="javascript">
- function colorisation(pid)
- {
- document.getElementById(pid).style.backgroundColor='#5DDF56';
- }
- function decolorisation(pid)
- {
- document.getElementById(pid).style.backgroundColor='#c6d6e7';
- }
- </SCRIPT>
- <?PHP
- /*******************************************/
- //Utilisation de la feuille de style
- if (ereg("MSIE", $_SERVER["HTTP_USER_AGENT"]))
- {
- echo'<link href="plug_in/style.css" rel="stylesheet" type="text/css">';
- }
- else
- {
- echo'<link href="plug_in/styleff.css" rel="stylesheet" type="text/css">';
- }
- //Connection page//
- echo '<html>';
- echo '<head>';
- echo '<title>Connexion a Satis !</title>';
- echo '</head>';
- echo '<body>';
- echo '<div align=center><img src=images/banniere.jpeg border=0>';
- echo '<br>';
- echo '<br>';
- echo '<br>';
- echo 'Munissez vous de votre code prof <b>IACA</b> !!';
- echo '<p>';
- echo '<form method="post" action="login/login.php">';
- echo '<table class="table3">';
- ?>
- <tr class='inf' id='name'>
- <td><b>Votre Nom</b></td>
- <td>
- <input type='text' name='s_name' onFocus='colorisation("name" )' onBlur='decolorisation("name" )'>
- </td>
- </tr>
- <tr class="inf" id="pass">
- <td> <b> Votre mot de passe<b></td>
- <td>
- <input type='password' name='s_pass' onFocus='colorisation("pass" )'onBlur='decolorisation("pass" )'>
- <?PHP
- echo '</td>';
- echo '</tr>';
- echo '<tr class="inf">';
- echo '<td colspan="2">';
- echo '<input type="submit" name="submit" value="login">';
- echo '</td>';
- echo '</tr>';
- echo '</table>';
- echo '</form>';
- echo '</body>';
- echo '</html>';
- ?>
|
le script login.php qui fait le traitement de la connexion
Code :
- <?php
- if (!headers_sent())
- {
- session_start();
- }
- $loginOK = false;
- if (!empty($_POST['s_name']) && !empty($_POST['s_pass']))
- {
- include('../config.inc.php');
- $db = mysql_connect($sql_server,$sql_login,$sql_pwd);
- mysql_select_db($sql_db,$db);
- $sql = sprintf("SELECT * FROM users WHERE name='%s'",mysql_real_escape_string($_POST['s_name']));
- $req = mysql_query($sql) or die('Erreur SQL <br>'.mysql_error());
- if($data = mysql_fetch_assoc($req))
- {
- // Normalement, on stocke pas un mot de passe, mais son md5sum.
- // donc, normalement, tu fait if (md5($s_pass) == $data['pass'] )
- // Ayant préalablement enregistré dans la base de donnée non pas le mot
- // de passe, mais la aussi son md5. Car si la BDD venait a être piraté,
- // le pirate n'aurai pas les mots de passe.
- // Et en réalité, pour vraiment bien faire, le mot de passe ne doit même
- // pas transiter une seule fois en clair sur le réseaux, et le md5() doit être fait à
- // la soumission du formulaire pour du javascript.
- if (md5($_POST['s_pass'])==$data['pass_md5'])
- {
- $loginOK = true;
- }
- if ($loginOK)
- {
- $_SESSION['s_firstname'] = $data['firstname'];
- $_SESSION['s_name'] = $data['name'];
- $_SESSION['s_levels'] = $data['levels'];
- $_SESSION['s_id'] = $data['id_user'];
- echo '<div align=center>vous êtes connecté, Veuillez attendre la redirection automatique...<div><br>';
- echo '<meta http-equiv="refresh" content="5; url=../index.php" >';
- }
- else
- {
- echo 'Une erreur est survenue, veuillez réessayer !';
- echo '<meta http-equiv="refresh" content="2; url=../index.php" >';
- }
- }
- }
- if ($data['firstname']=='')
- {
- echo Grrrrrrr;
- }
- ?>
- <br><br />
- <div align=center><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="800" height="400" title="tux">
- <param name="movie" value="../images/tux.swf" />
- <param name="quality" value="high" />
- <embed src="../images/tux.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="32" height="32"></embed>
- </object></div>
|
Ce que je peut dire, c'est que les varibles $data['firstname"] et ses soeurs restent désésperément vide. peut être que l'erreur est au niveau des fonctions header sent, ou session start, mais mes compétences s'arretent içi.
apres test, $_post['s_name'] passe bien du premier au deuxieme script
Merci beaucoup pour votre aide ! Message édité par kontas le 04-03-2008 à 10:00:36
|