我想动态创建多个按钮,最终会有唯一的点击事件。每个按钮的“标题或名称”存储在DB中。我已经独立验证了创建动态按钮的代码,我还验证了我的查询正常工作以及我的“while”循环。以下是我的代码:
$q="SELECT sess_desc, sess_butt, sess_tag FROM Sessions ORDER BY DateEstab";
$r = mysqli_query ($dbc, $q);
if ($r) {
while ($row = mysqli_fetch_array($r, MYSQLI_ASSOC)) {
$image = imagecreate(248,53);
$blue = imagecolorallocate($image, 0, 0, 255); //text box background color
$white = ImageColorAllocate($image, 255,255,255); //Font color
if(!isset($_GET['size'])) $_GET['size'] = 18; //text size
if(!isset($_GET['text'])) $_GET['text'] = $row['sess_butt']; //button lable
imagettftext($image, $_GET['size'], 0, 20,35, $white, "tahoma",$_GET['text']);
echo '<tr><td align="left">' . imagepng($image) . imagedestroy($image) .'</td>
<td align="left">' . $row['sess_desc'] . '</td>
'</td><td align="left">' . $row['sess_tag'] . '</td> </tr>';
}
}
这是我运行脚本时结果的开始(它继续)。 PNGIHDR 5 ;RPLTE __ ?? `!5IDATX OԻP TڎJ Fѹ&amp;&gt;ƶ : &GT; #q中
我期待带有白色标签的蓝色矩形按钮。我需要做什么才能使用php来完成这项工作,或者我需要使用JS寻找解决方案(我不太了解JS)?我看过“类似的问题”,php手册和我发现在互联网上搜索的其他文章。
这甚至可能吗?我运行脚本创建一个按钮,如果我定义$ _GET ['text'] =“Hello Everyone”,它可以正常工作,但我试图从数据库表中提取“文本”。同样,我想从数据库中的多个条目创建多个按钮。具体来说,是sess_butt列。我甚至将我的查询限制为“1”,这也不起作用......结果相同。
答案 0 :(得分:-1)
如果您想将图片嵌入HTML中,则需要对它们进行base64编码。类似的东西:
<img alt="Embedded Image" src="data:image/png;base64,base_64_encode(imagepng($image))"/>
我还建议你不要这样做并生成网址,而这将会击中你的其他脚本,而这只是生成图像。