Следующий код включает аутентификацию пользователей приложения Facebook с помощью скрипта, который запускается событием формы php. Я отправляю строку через форму HTML со следующим кодом:
<html>
<body>
<form name="form" enctype="multipart/form-data" action="test.php" method="post">
<input name="message" type="text" value=""><br/><br/>
<input type="submit" value="Upload"/><br/>
</form>
</body>
</html>
Код для test.php:
<?php session_start(); ?>
<html>
<head xmlns:worldcentric="https://apps.facebook.com/testapp/ns#">
<title>Test App</title>
</head>
<body>
<?php
$app_id = "191622610935428";
$my_url = "http://www.thepropagator.com/facebook/testapp/test1.php";
$string1 = (string)$_POST["message"];
$_SESSION['str'] = $string1;
// $string2 = "teststring";
// $_SESSION['str'] = $string2;
$code = $_REQUEST["code"];
if(empty($code)) {
$dialog_url = "https://www.facebook.com/dialog/oauth?client_id="
. $app_id . "&redirect_uri=" . urlencode($my_url) . "&scope=email,publish_actions";
echo("<script>top.location.href='" . $dialog_url . "'</script>");
}
$string3 = $_SESSION['str'];
echo $string3;
?>
</body>
</html>
Код выше информации, которую я пытаюсь сохранить в
$_SESSION['str']
Не сохраняется. Однако, когда я заменяю строки
$string1 = (string)$_POST["message"];
$_SESSION['str'] = $string1;
С закомментированными строками:
$string2 = "teststring";
$_SESSION['str'] = $string2;
Текст "testtring" действительно передается вместе. Как вы можете видеть, я пытался преобразовать $ _POST ["message"] в строку, но в любом случае это не работает. Есть идеи?