社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  DATABASE

PHP脚本返回MySQL数据到表中,需要回车

Dan • 5 年前 • 1523 次点击  

我有一个PHP脚本,它从MySQL数据库表中选择信息,并使用while循环将其流到一个表中,然后对每个单元格使用for each循环创建信息列(日期、图像、句子)。我的问题是这些列是并排的,在我的页面上跑来跑去( http://dankirchoff.com/drawingweek.php ). 我需要一个“回车”的某种形式,以保持他们在网页上。我试着用“索引”字段作为计数器,这不起作用。有什么建议吗?

<?php
	include ("inc_connect.php");
	if ($link !== FALSE) {
    	$db = "dkfineart_01";
    	mysqli_select_db($db);
    	$TableName = "drawingoftheweek";
    	$sql = "SELECT * FROM $TableName";
		if ($res = mysqli_query($link, $sql))	{
			if (mysqli_num_rows($res) > 0)	{
				while ($drawresults = mysqli_fetch_array($res))	{
					$drawing[] = $drawresults;
				}
				echo "<table style='margin-left:190px; width:500px;'><tr>";
				foreach ($drawing as $draw)	{
					echo "<td style='padding:20px 20px 0 0'>" . date('m/d/Y', strtotime($draw['date'])) . "</td>";
				}
				echo "</tr><tr>";
				foreach ($drawing as $draw)	{
					echo "<td style='padding:0 20px 0 0'>" . "<img src='images/" . $draw['image'] . ".jpg' width='400px'>" . "</td>";
				}
				echo "</tr><tr>";
				foreach ($drawing as $draw)	{
					echo "<td width='400px' style='padding:0 20px 0 0'>" . $draw['drawingtext'] . "</td>";
				}
				echo "</tr>";
				foreach ($drawing as $draw)	{
					$index = $draw['index'];
						if ($index % 2 === 0)	{
							echo "<br />";
						}
					}
				echo "</table>";
			}
				mysqli_free_result($res);
			}
			else	{
				echo "No matching records are found.";
			}
		}
		else	{
			echo "Unable to select from table. " . mysqli_error($link);
		}
	mysqli_close($link);
?>
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/54302
 
1523 次点击  
文章 [ 1 ]  |  最新文章 5 年前
Nate LaClaire
Reply   •   1 楼
Nate LaClaire    6 年前

我的建议是使用表以外的其他东西来布局,并使用CSS来创建分隔符。这样做的好处是允许您对结果进行一次迭代,而不是将结果存储在数组中并多次迭代。例如:

<style>
#dodWrapper {
    margin-left:190px; 
}
.dod {
    width:500px;
    display: inline-block;
}
.dodDate {
    padding:20px 20px 0 0;
}
.dodImage {
    padding:0 20px 0 0;
}
.dodImage img {
    width:400px;
}
.dodText {
    padding:0 20px 0 0;
    width:400px;
}
</style>
<?php
	include ("inc_connect.php");
	if ($link !== FALSE) {
    	$db = "dkfineart_01";
    	mysqli_select_db($db);
    	$TableName = "drawingoftheweek";
    	$sql = "SELECT * FROM $TableName";
		if ($res = mysqli_query($link, $sql))	{
			if (mysqli_num_rows($res) > 0)	{
                echo "<div id='dodWrapper'>";
				while ($draw = mysqli_fetch_array($res))	{
                    echo "<div class='dod'>";
                    echo "<div class='dodDate'>";
                    echo date('m/d/Y', strtotime($draw['date']));
                    echo "</div>";
                    echo "<div class='dodImage'>";
                    echo "<img src='images/" . $draw['image'] . ".jpg'>";
                    echo "</div>";
                    echo "<div class='dodText'>";
                    echo $draw['drawingtext'];
                    echo "</div>";
                    echo "</div>";
                }
                echo "</div>";
				
			}
				mysqli_free_result($res);
			}
			else	{
				echo "No matching records are found.";
			}
		}
		else	{
			echo "Unable to select from table. " . mysqli_error($link);
		}
	mysqli_close($link);
?>

display:inline-block 基本上把每一个块当作一个单词,在“行”的末尾打断