У меня есть динамическая таблица, состоящая из всех деталей пользователя, а также ссылка на клик по ней направляется на другую страницу, где мы можем просмотреть подробную информацию о конкретном курсе конкретного пользователя. Моя проблема в том, что я хочу скрыть идентификатор и не могу использовать метод post. Также есть способ скрыть URL-адрес или любой способ сделать это
echo "<td>" . $lead['lastname'] . "</td>";
echo "<td>" .'<a href="course_complete_sup.php?id'.$row1['userid'].'" class="lien2" value='.$row1['userid'].'/>Course Completed</a>' ."</td>" ;
echo "<td>" .'<a href="course_progress_sup.php?id='.$row1['userid'].'" class="lien2" value='.$row1['userid'].'/>Course Progress</a>' ."</td>" ;
echo
спасибо
ok я использовал метод регентства.
$_ SESSION ['rand_seed'] = rand (1,100000);
echo ". $lead ['lastname']." ";
echo "<td>" .'<a href="course_complete_sup.php?id='.md5($row1['userid']).$_SESSION['rand_seed'].'" class="lien2" value='.$row1['userid'].'/>Course Completed</a>' ."</td>" ;
тогда, когда он направляет страницу course_complete_sup.php
$ids = $_GET ['id']; $ salt= $_SESSION ['rand_seed']; unset ($ _SESSION ['rand_seed']);
if ($salt < 1)
{
header("location: access-denied.php");
}
еще {
list($var1) = explode($salt, $ids, 2);
}
$encrypt = mysql_query("select distinct(userid) from course_complete ");
{
while($row = mysql_fetch_array($encrypt))
{
$r= md5($row['userid']);
if( $r== $var1){
$id = $row['userid'];
}
}
}
И это работает!!!!!!!!!!
спасибо regality и u все...
Cheersssssss
Нет, если вы используете GET, параметры будут отображаться в URL-адресе. Вы можете попробовать перенаправить сразу, но это не помогает, если проблема с безопасностью.
Есть ли конкретная причина, по которой вы не можете использовать POST? Это действительно будет способ, если вам нужно скрыть эту информацию.
Единственный способ предотвратить просмотр пользователем URL-адреса - это сделать все на сервере, что, как правило, слишком сложно и медленнее. Вы должны переконфигурировать свой код, чтобы он не был проблемой безопасности для URL-адреса, но если вы не можете, вам придется отправить хеш или произвольное число в ссылку.
Например, вы можете создать следующую ссылку:
'<a href="newaction.php?action='.md5("user_id=" . $row1['userid'])).'" class="lien2" />Course Progress</a>'
и не зная ничего о вашем php-коде, я бы предположил, что вы можете сделать что-то вроде следующего в newaction.php:
<?php
// ... a bunch of code ...
if ($_GET['action'] == md5("user_id=" . $row1['userid'])) {
course_progress_sup($row1['userid']);
}
// .. a bunch more code ...
?>
Я напоминаю вам, что это плохая идея, и вы должны переосмыслить, как вы собираетесь это делать, но вы могли бы сделать что-то подобное, если бы вам пришлось.