我正在尝试将连接到我的MySQL数据库的php代码直接放在我的HTML页面中,但是当我尝试查看该页面时出现问题..如何解决错误"致命错误:在第41行的/membri/bestparty/IOS/IOS/eventi.php中超过了30秒的最大执行时间"
例如,如果我尝试删除一个变量$festa[$i]
错误仍然存在。
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="HandheldFriendly" content="True">
<meta http-equiv="cleartype" content="on">
<link rel="stylesheet" type="text/css" href="css/stile.css">
<meta name="viewport" content="width=320, initial-scale=0.7, user-scalable=no">
<script src="JS/jquery-1.11.1.js.js"></script> <!--PER EVENTI-->
<script src="JS/func.js"></script> <!--PER EVENTI-->
<title>BParty</title>
</head>
<body>
<?
$DBhost = "localhost";
$DBuser = "bestparty";
$DBpass = "";
$DBName = "my_bestparty";
$table = "Dati";
mysql_connect($DBhost,$DBuser,$DBpass) or die("Impossibile collegarsi al server");
@mysql_select_db("$DBName") or die("Impossibile connettersi al database $DBName");
$sqlquery = "SELECT * FROM `Dati` ORDER BY Data DESC";
$result = mysql_query($sqlquery);
$number = mysql_num_rows($result);
$i = 0;
while ($i < 20) {
$festa[$i] = mysql_result($result,$i,"festa");
$luogo[$i] = mysql_result($result,$i,"luogo");
$idfesta[$i] = mysql_result($result,$i,"ID");
$data[$i] = mysql_result($result,$i,"data");
$foto[$i] = mysql_result($result,$i,"organizzatore");
}
?>
<div id="navigation">
<table width="100%">
<tr valign="middle">
<td valign="middle" width="25%" align="center">
<
</td>
<td valign="middle" width="50%" align="center">
BPARTY
</td>
<td width="25%" align="center">
>
</td>
</tr>
</table>
</div>
<div id="evntprg">
EVENTI IN PROGRAMMA
</div>
<div id="container" style="overflow:scroll;">
<? echo'
<!--INIZIO DIV EVENTO-->
<a href="http://www.bparty.org/IOS/IOS/pagevento.php?var=$idfesta[$i]">
<div style="width:90%; display:block; margin:0 auto;
padding-top:10px; margin-top:10px; padding-left:10px;
background-color:#FFF; padding-bottom:10px;
border-left:solid 8px #4D7C4F;">
<table width="100%" style=''table-layout:fixed''>
<tr valign="middle">
<td valign="middle" align="center" class="evntfoto"
style="background-image:url($foto[$i]);
background-position:center;
background-size: cover;">
</td>
<td valign="top" align="left" id="evnttxt">
<font color="#0066FF" size="+1"> <b> $festa[$i] </b></font> <br>
echo "$data[$i]" <br>
<font color="#585858"> $luogo[$i] </font> <br>
</td>
</tr>
</table>
</div></a>
<!--FINE DIV EVENTO-->
';
?>
</div>
</div>
</body>
</html>
--编辑--
好的,我解决了这个问题,但是现在..为什么 HTML 页面将变量显示为"$festa[$i]"而不是例如"Lorem ipsum"?
<?
$DBhost = "localhost";
$DBuser = "bestparty";
$DBpass = "";
$DBName = "my_bestparty";
$table = "Database";
mysql_connect($DBhost,$DBuser,$DBpass) or die("Impossibile collegarsi al server");
@mysql_select_db("$DBName") or die("Impossibile connettersi al database $DBName");
$sqlquery = "SELECT * FROM `Database` ORDER BY data DESC";
$result = mysql_query($sqlquery);
$number = mysql_num_rows($result);
$i = 0;
while ($i < 20) {
$festa[$i] = mysql_result($result,$i,"festa");
$luogo[$i] = mysql_result($result,$i,"luogo");
$idfesta[$i] = mysql_result($result,$i,"ID");
$data[$i] = mysql_result($result,$i,"data");
$linkfoto[$i] = mysql_result($result,$i,"organizzatore");
echo'
<!--INIZIO DIV EVENTO-->
<a href="http://www.bparty.org/IOS/IOS/pagevento.php?var=$idfesta[$i]">
<div style="width:90%; display:block; margin:0 auto;
padding-top:10px; margin-top:10px; padding-left:10px;
background-color:#FFF; padding-bottom:10px;
border-left:solid 8px #4D7C4F;">
<table width="100%" style=''table-layout:fixed''>
<tr valign="middle">
<td valign="middle" align="center" class="evntfoto"
style="background-image:url($foto[$i]);
background-position:center;
background-size: cover;">
</td>
<td valign="top" align="left" id="evnttxt">
<font color="#0066FF" size="+1"> <b> $festa[$i] </b></font> <br>
echo "$data[$i]" <br>
<font color="#585858"> $luogo[$i] </font> <br>
</td>
</tr>
</table>
</div>
</a>
<!--FINE DIV EVENTO-->
';
$i++;
}
你没有在循环中递增$i
。请考虑改用for
循环。另请参阅有关for
循环的 PHP 文档。
好的,我解决了这个问题,但是现在..为什么html页面将变量显示为"$festa[$i]"而不是例如"Lorem ipsum"?
如果要打印字符串中的变量,则应使用双引号而不是单引号。但是在您的情况下,您必须以这种方式转义字符串中的所有双引号''"。更好的方法是不要这样做,只是像这样连接字符串:
echo '...<b>' . $festa[$i] . '</b>...';
对要回显的所有变量执行此操作。