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
| <?php
$tab = file ('a.txt') ; // on charge le fichier des mots de passe
$i = 0 ;
$temp = '';
$nb = count ($tab) ;
$login = $_SERVER['PHP_AUTH_USER'] ; // login du visiteur
$hipe = $_SERVER['REMOTE_ADDR'] ; // adresse ip du visiteur
while ($i < $nb)
{
$ligne = $tab [$i] ;
$position = strpos ($ligne , $login ) ; // on regarde si le login est présent dans le fichier
if ($position === FALSE) // s'il est présent, on le laisse dans le fichier
{
$temp .=$ligne ;
}
else // sinon, on remplace le mdp par l'ip du visiteur
{
$ligne = substr_replace($ligne, $hipe, 9, -1) ;
$temp .=$ligne ;
}
$i++ ;
} // fin while
$fp = fopen ('a.txt' , 'w') ; // on reecrit le fichier des mots de passe
fwrite ($fp , $temp) ;
fclose ($fp) ;
// ? >
// fin de mon script. Si on enlève ce qui suit, le script fonctionne bien.
// ce qui suit , est le code de LIMESURVEY.
//<?php
/*
* LimeSurvey
* Copyright (C) 2007 The LimeSurvey Project Team / Carsten Schmitz
* All rights reserved.
* License: GNU/GPL License v2 or later, see LICENSE.php
* LimeSurvey is free software. This version may have been modified pursuant
* to the GNU General Public License, and as distributed it includes or
* is derivative of works licensed under the GNU General Public License or
* other free or open source software licenses.
* See COPYRIGHT.php for copyright notices and details.
*
* $Id: index.php 8488 2010-03-15 21:35:23Z c_schmitz $
*/
// Security Checked: POST, GET, SESSION, REQUEST, returnglobal, DB
require_once(dirname(__FILE__).'/classes/core/startup.php');
require_once(dirname(__FILE__).'/config-defaults.php');
require_once(dirname(__FILE__).'/common.php');
require_once(dirname(__FILE__).'/classes/core/language.php');
@ini_set('session.gc_maxlifetime', $sessionlifetime);
$loadname=returnglobal('loadname');
$loadpass=returnglobal('loadpass');
$scid=returnglobal('scid');
$thisstep=returnglobal('thisstep');
$move=sanitize_paranoid_string(returnglobal('move'));
$clienttoken=sanitize_token(returnglobal('token'));
if (!isset($thisstep)) {$thisstep = "";}
if (!isset($surveyid)) {$surveyid=returnglobal('sid');}
else {
//This next line ensures that the $surveyid value is never anything but a number.
$surveyid=sanitize_int($surveyid);
}
//DEFAULT SETTINGS FOR TEMPLATES
if (!$publicdir) {$publicdir=".";}
$templaterootdir="$publicdir/templates";
// Compute the Session name
// Session name is based:
// * on this specific limesurvey installation (Value SessionName in DB)
// * on the surveyid (from Get or Post param). If no surveyid is given we are on the public surveys portal
$usquery = "SELECT stg_value FROM ".db_table_name("settings_global")." where stg_name='SessionName'";
$usresult = db_execute_assoc($usquery,'',true); //Checked
if ($usresult)
{
$usrow = $usresult->FetchRow();
$stg_SessionName=$usrow['stg_value'];
if ($surveyid)
{
@session_name($stg_SessionName.'-runtime-'.$surveyid);
}
else
{
@session_name($stg_SessionName.'-runtime-publicportal');
}
}
else
{
session_name("LimeSurveyRuntime-$surveyid");
}
session_set_cookie_params(0,$relativeurl);
@session_start();
// First check if survey is active
// if not: copy some vars from the admin session
// to a new user session
// ce script est plus long , mais j'ai arrté là la copie; elle n'apporte rien de plus, car le script de limesurvey est opérationnel ! |
Partager