[英]PHP variable value not being displayed in JS alert
在以下代碼中,我生成了一個php表單,該表單接受了用戶正在處理的arp網絡攻擊的值。 但是,我試圖顯示在JavaScript警報中發送的“ $ loops”數據包的數量,當我運行代碼時,警報中未顯示數據包的數量,而且我不知道出了什么問題,所以如果有人可以通過我的代碼,我會非常感激。
<form method ='post' action ="<?php echo $_SERVER['PHP_SELF'];?>">
<?php $loops = "";?>
<b> <p>Number of packets to be sent:</p>
<input type="text" name="loops" value="<?php echo $loops;?>">
<br><br></b>
<?php
$php_var = $loops;?>
<p style="text-align: center;">
<button onclick="myFunction()">Submit</button></p><br>
<script>
function myFunction() {
var js_var = "The number of packets sent is: <?php echo $php_var; ?>";
alert(js_var);
}
</script>
</font>
</form>
<?php
if($_SERVER["REQUEST_METHOD"]== "POST"){
if(isset($_POST["loops"])){
$loops=$_REQUEST['loops'];
}
?>
您在此處將$php_var
分配$php_var
空白。
<?php $loops = "";?>
<?php $php_var = $loops;?>
因此,它沒有顯示任何價值。
我認為您需要在文本框中輸入用戶輸入的值。
<input type="text" name="loops" value="<?php echo $loops;?>" id="loops"> // Observe the added `id` attribute.
您可以這樣做:
<script>
function myFunction() {
//var js_var = "The number of packets sent is: <?php echo $php_var; ?>";
var val = document.getElementById('loops').value;
var js_var = "The number of packets sent is: " + val;
alert(js_var);
}
</script>
嘗試像
<?php $loops = "123";?>
function myFunction() {
var js_var = "The number of packets sent is: <?php echo $php_var; ?> ";
alert(js_var);
}
試試這個代碼
<form method ='post' action ="<?php echo $_SERVER['PHP_SELF'];?>">
$loops = isset($_POST["loops"])?$_POST["loops"]:"";
<b> <p>Number of packets to be sent:</p>
<input type="text" name="loops" value="<?php echo $loops;?>">
<br><br></b>
<?php
$php_var = $loops;?>
<p style="text-align: center;">
<button onclick="myFunction()">Submit</button></p><br>
<script>
function myFunction() {
var js_var = "The number of packets sent is: <?php echo $php_var; ?>";
alert(js_var);
}
</script>
</font>
</form>
<?php
if($_SERVER["REQUEST_METHOD"]== "POST"){
if(isset($_POST["loops"])){
$loops=$_REQUEST['loops'];
}
?>
您應該始終在頁面開頭使用PHP。 它是必需的,以便您可以獲得HTML中可用的變量。
<form method ='post' action ="<?php echo $_SERVER['PHP_SELF']; ?>">
<?php $loops = ''; ?>
<?php if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (isset($_POST["loops"])) {
$loops = $_REQUEST['loops'];
}
}
?>
<b>
<p>Number of packets to be sent:</p>
<input type="text" name="loops" value="<?php echo $loops; ?>">
<br><br>
</b>
<?php $php_var = $loops; ?>
<p style="text-align: center;">
<button onclick="myFunction()">Submit</button>
</p>
<br>
<script>
function myFunction() {
var js_var = "The number of packets sent is: <?php echo $php_var; ?>";
alert(js_var);
}
</script>
</form>
您應該在$loop
變量初始化后檢查是否有任何$_REQUEST['loops']
。
所以代碼應該是
<?php
$loops = "";
if($_SERVER["REQUEST_METHOD"]== "POST"){
if(isset($_POST["loops"])){
$loops=$_REQUEST['loops'];
}
}
?>
<form method ='post' action ="<?php echo $_SERVER['PHP_SELF'];?>">
<b> <p>Number of packets to be sent:</p>
<input type="text" name="loops" value="<?php echo $loops;?>">
<br><br></b>
<?php
$php_var = $loops;?>
<p style="text-align: center;">
<button onclick="myFunction()">Submit</button></p><br>
<script>
function myFunction() {
var js_var = "The number of packets sent is: <?php echo $php_var; ?>";
alert(js_var);
}
</script>
</font>
</form>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.