Добрый день.
У меня возникла проблема при создании чата, а точнее при попытке ограничить доступ к чату, чтобы пользователи могли видеть только те сообщения, которые должны.
Подскажите как в моем случае передать значение $num (id получателя) на следующую страницу.
Имеется 3 файла:
1)
checkhistory.php - здесь я получаю значение request через radio ($num) и оно нормально передается на страницу "chat .php" путем отправки формы в "value".
<input class='base' type='hidden' name='pac_id' value='$num' size='7' placeholder='id pacjenta'>
2)
chat.php - на этой странице я получаю значение "$num" и добавляю его в куки
<?php
$num = trim($_REQUEST['num']);
session_start();
if(!isset($_COOKIE['num']))
setcookie('num', $row['num'], time() + (60*60*24*30));
?>
После чего добавляю его в форму и также отправляю на страницу "add_mess.php". Вот кусочек кода:
<div class="block13">
<h1>Chat room</h1>
<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load("jquery", "1.3.2");
google.load("jqueryui", "1.7.2");
function send()
{
var mess=$("#mess_to_send").val();
$.ajax({
type: "POST",
url: "add_mess.php",
data:"mess="+mess,
success: function(html)
{
load_messes();
$("#mess_to_send").val('');
}
});
}
function load_messes()
{
$.ajax({
type: "POST",
url: "load_messes.php",
data: "req=ok",
success: function(html)
{
$("#messages").empty();
$("#messages").append(html);
$("#messages").scrollTop(90000);
}
});
}
</script>
<table>
<tr>
<td>
<div id="messages">
</div>
</td>
</tr>
<tr>
<td>
<form action="javascript:send();">
<input type="text" id="mess_to_send" class="textmess">
<input class='base' type='text' name='id_to' value= '<?php echo htmlspecialchars($num); ?>' size='7' placeholder='id pacjenta'>
<input type="submit" value="Wyslac" class="dodajos111">
</form>
</td>
</tr>
</table>
<script>
//action="javascript:send();"
load_messes();
setInterval(load_messes,3000);
</script>
3)
add_mess.php - сюда ничего не доходит, пробовал отправлять и через форму в value и через куки, 0 реакции. В этом файле мне нужно значение $num, для подальшего добавления в базу ($num - это id получателя сообщения в чате).
Код:
<?php
include('../../session.php');
$num = trim($_REQUEST['num']);
session_start();
setcookie('username', $row['username'], time() + (60*60*24*30));
setcookie('user_id', $row['user_id'], time() + (60*60*24*30));
print_r($_COOKIE);
if(isset($_POST['mess']) && $_POST['mess']!="" && $_POST['mess']!=" ")
{
$mess=$_POST['mess'];
$username=$_COOKIE['username'];
$num=$_COOKIE['num'];
include("bd.php");
$res=mysql_query("INSERT INTO `messages` (`login`,`message`,`id_add`,`id_to`) VALUES ('". $_COOKIE['username'] . "','$mess','". $_COOKIE['user_id'] ."','". $_COOKIE['num'] ."' ) ");
// $res=mysql_query("INSERT INTO `messages` (`login`,`message`,`id_add`,`id_to`) VALUES ('". $_COOKIE['username'] . "','$mess','". $_COOKIE['user_id'] . "','$num') ");
}
?>
Подскажите в чем может быть проблема, что я делаю не так, и если есть другие варианты отправки этого значения, то большая просьба показать что да как.