ציטוט:
נכתב במקור על ידי Eran-s
בשביל מה להתעסק בלמחוק אותו? גם ככה הוא יוחלף בתוכן אחר אם ירעננו או משהו או ימחק כשיסגרו את הדפדפן.
|
אם אני לא מוחק אותו אז אחרי שהמשתמש לוחץ submit הקוד מספיק להתחלף ואז זה יראה לו שגיאה.
בסוף הגעתי לקוד -
PHP קוד:
<?
session_start();
if($_POST['action']=="doedit"){
$kod = $_POST['kod'];
if ($_SESSION['image'] == $kod)
echo "good";
else
echo "bad";
} else {
$_SESSION = array();
session_destroy();
}
if (!isset($_SESSION['image'])) {
$string = rand ( 11111,99999 ) ;
$string = str_replace ( '2', 'F', $string ) ;
$string = str_replace ( '6', 'e', $string ) ;
$string = str_replace ( '1', 'X', $string ) ;
$string = str_replace ( '7', 'D', $string ) ;
$string = str_replace ( '4', 'h', $string ) ;
} else {
$string = ($_SESSION['image']);
}
if (empty($_SESSION['image'])) {
$_SESSION['image'] = $string;
} else {
echo "";
}
echo "<img src='test.php?code=$string' /><br />Code: $string<br /><br />";
echo $_SESSION['image'];
echo '<form action="hi.php" method="POST"><br />enter code pl0x<br /><input type="text" name="kod" size="50" value=><input type="submit" value="gogogo" /><input type="hidden" name="action" value="doedit" /></form>';
?>
זה יוצר סטרינג רנדומלי, וברגע שמשתמש לוחץ על submit הוא מתחלף, אבל אחרי שהמשתמש מנסה פעם שניה (עם סטרינג אחר כבר), הכל עובד פיקס.
אין לי שמץ של מושג מה לא בסדר איתו,
עכשיו צריך רק לסדר שהסטרינג לא יתחלף אחרי ה submit.