添加函数会导致代码停止而不会出现错误。 (PHP / HTML / JS)

时间:2015-01-04 07:59:09

标签: javascript php

我的朋友和我正在研究一个项目,我们有一个部分,我们连接到数据库,从中获取一些信息,然后显示与数据的每个部分相关的图像。 (更具体地说,我们取花名称并放上每朵花的图像。) 之后我们希望能够更改html代码以显示有关它的一些信息。 问题是每当我们添加一个函数(Change())时代码都不起作用。无论我把它放在哪里或它包含什么都没关系,结果是一样的。

代码:(请注意,如果没有onclick它就无法运行,但我添加了它以便更容易理解我正在尝试做的事情)

 <!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.4.4/jquery.mobile-1.4.4.min.css">
<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
<script src="http://code.jquery.com/mobile/1.4.4/jquery.mobile-1.4.4.min.js"></script>

<?php

$servername = "sometrollhost.net";
$username = ".........";
$password = "*********"; //cencored those :P
$dbname = "/////////";

mysql_connect($servename, $username, $password);


mysql_select_db($dbname) or die( "Unable to select database");

$petalcolor = str_replace("pe", "", $_POST[PetalColor]);
$pistilcolor = str_replace("pi", "", $_POST[PistilColor]);

$sql = "SELECT name, petalcolor, pistilcolor FROM flower WHERE petalcolor='$petalcolor' AND pistilcolor='$pistilcolor' ";
$result = mysql_query($sql);
$num = mysql_num_rows($result);


?>
</head>
<body>

<?php

function Change(){
document.getElementById("test").innerHTML="iggy";
}

$i=0;

while($i < $num){
    $name = mysql_result($result, $i, "name");
    $name = str_replace(" ", "", $name);
    echo '<img onclick="Change()" src="/info/' . $name . '.jpg" width="102" height="102">';
    $i++;
} ?>
<div id="test"> abcd
 </div>
</body>

</html>

3 个答案:

答案 0 :(得分:1)

你在这里混合东西,功能改变了它的javascript,不应该包含在你的php标签中。

<script type="text/javascript">
function Change(){
document.getElementById("test").innerHTML="iggy";
}
</script>

然后是您正在使用的PHP代码。

答案 1 :(得分:0)

<?php

function Change(){
document.getElementById("test").innerHTML="iggy";
}

$i=0;

应该是

<script type="text/javascript">
function Change(){
document.getElementById("test").innerHTML="iggy";
}
</script>

<?php

$i=0;
像其他人说的那样,Change函数是一个javascript函数,而不是php函数

答案 2 :(得分:0)

你的Change()函数是JavaScript代码,但是你已经在php标签里面了。它需要位于HTML脚本标记中。