#javascript #php #html #session
#javascript #php #HTML #сеанс
Вопрос:
Я пытаюсь передать сеанс между двумя HTML-страницами,
$row=mysqli_fetch_assoc($result);
$sname = $row["SP_Name"];
$sname = ucfirst($sname);
$sprice1 = $row["SP_Price1"];
$sprice1 = ucfirst($sprice1);
$_SESSION["sprice1"] = $sprice1;
echo "<tr><td>".'<a class="btn btn-success" href="pym.html" value="$sprice1">'.$row["SP_Price1"].'</a>'."</tr></td>";
на второй странице я пытаюсь использовать это значение для js:
<script type="text/javascript">
var temp = "<?php session_start(); echo($_SESSION['sprice1']); ?>";
var price = temp;
var gst = .18;
var k = Number(price)*Number(gst);
var total = Number(price) Number(k)
document.getElementById("gstprice").innerHTML =k.toFixed(1);
document.getElementById("total").innerHTML =total.toFixed(1);
document.getElementById("sprice").innerHTML = price;
</script>
но значение не передается, и var Price отображается как пустой
Комментарии:
1. вы не вызывали
session_start()
на первой странице.2. Зачем использовать HTML-страницы? разве вы не можете просто переименовать их в .php? и start_session() на каждой странице, и все готово?
3. Вам также необходимо вызвать session_start() в вашем коде на первой странице.
4. теперь я вызвал его, но он все тот же, и я переименовал файлы в php, но это также не работает. Я попробовал команду <?php session_start(); echo($_SESSION[‘sprice1’]); ?> вне JS, и она работает
5. поместив ваши двойные кавычки <?php … ?> insdie на вторую страницу, PHP не будет выполнять эти скрипты, удалите эти двойные кавычки.
Ответ №1:
запускайте сеанс на каждой странице, где вы используете session['name'];
тег
<?php
session_start();
$row=mysqli_fetch_assoc($result);
$sname = $row["SP_Name"];
$sname = ucfirst($sname);
$sprice1 = $row["SP_Price1"];
$sprice1 = ucfirst($sprice1);
$_SESSION["sprice1"] = $sprice1;
echo "<tr><td>".'<a class="btn btn-success" href="pym.html" value="$sprice1">'.$row["SP_Price1"].'</a>'."</tr></td>";
?>
html-страница
<?php session_start(); ?>
<html>
//
//
</html>
Комментарии:
1. спасибо!, теперь, когда я передаю <?php session_start(); echo ($_SESSION[‘sprice1’]); ?> внутри HTML, он работает, но данные не извлекаются внутри JS
2.
<script type="text/javascript"> <?php echo 'var msg = "'.json_encode($_SESSION['msg']).'";'; </script>