gpt4 book ai didi

php - 函数中的变量未传递给 php

转载 作者:行者123 更新时间:2023-12-02 19:28:48 25 4
gpt4 key购买 nike

我在将变量从 javascript 函数传递到 php 页面时遇到一些问题。 open_boosters 从数组返回一个随机变量,我想将其传递给 site3.php。我知道 PHP 代码首先被执行,但是如何在用户不必单击任何内容的情况下传递这些变量?

>Main.html

<p id="generatenumbers"></p>
<script>
var open_boosters = function()
{
var i, j;
var array=[];

for(i=0; i < 13; i++)
{
(array[i] = Math.floor(Math.random()*14)+16);

for(j=0;j<i;j++)
{
while(array[i]==array[j])
{
(array[i]= Math.floor(Math.random()*14)+16);
}
}
return array[i];
}
}

window.addEventListener('DOMContentLoaded', function ()
{
var randnumb = open_boosters();

document.getElementById("generatenumbers").innerHTML=open_boosters();
document.getElementById("randImg").src = "site3.php?rndNum"+randnumb;
}, false);
</script>

site3.php

<?php
$mysqli=mysqli_connect('localhost','root','','draftdb');
if (!$mysqli)
die("Can't connect to MySQL: ".mysqli_connect_error());

$stmt = $mysqli->prepare("SELECT display.PICTURE_ID
FROM cards
INNER JOIN display ON cards.DISPLAY_ID = display.DISPLAY_ID
WHERE display.DISPLAY_ID=? AND cards.CARD_TYPE ='rare'" );

$displayid = isset($_GET['randnumb'])? $_GET['randnumb'] : false;

//echo "Number: ".$displayid." ";
$stmt->bind_param("i", $displayid);
$stmt->execute();
$stmt->bind_result($image);
$stmt->fetch();
//header("Content-Type: image/jpeg");
echo $image;
?>

最佳答案

我可以通过评论中建议的更改来完成此工作:

  • 使 open_boosters() 成为一个函数
  • 将缺少的 = 添加到网址
  • 对两个 getElementById 设置函数使用相同的 randnumb 变量
<p id="generatenumbers"></p>
<img src="" id="randImg" />

<script>
function open_boosters()
{
var i, j;
var array=[];

for(i=0; i < 13; i++)
{
(array[i] = Math.floor(Math.random()*14)+16);
for(j=0;j<i;j++)
{
while(array[i]==array[j])
{
(array[i]= Math.floor(Math.random()*14)+16);
}
}
return array[i];
}
}

window.addEventListener('DOMContentLoaded', function ()
{
var randnumb = open_boosters();

document.getElementById("generatenumbers").innerHTML=randnumb;
document.getElementById("randImg").src = "site3.php?rndNum="+randnumb;
}, false);

</script>

然后,site3.php 脚本可以使用该随机数作为 $_GET['rndNum'](而不是 $_GET['randnumb'])。

关于php - 函数中的变量未传递给 php,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11748375/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com