如何将PHP + HTML脚本存储到一个变量中并将该变量插入MySQL数据库?

时间:2013-11-29 13:26:00

标签: php html mysql

我不知道这是否可能。我的要求是这样的:

<?php
$str=<<<abc
$sql=mysql_query("select * from links where column='value'");
$sq1=mysql_fetch_row($sql);
$s1=$rec[13];
$s2='Done';
if($s1==$s2) {
<form name=f1 method=post action=\"xxx.php\">
<input type=hidden name=income value=$rec[value]>
<input type=submit value=\"Accept\" id=submit2 name=submit2 disabled=\"disabled\">
</form>
}
else
<form name=f1 method=post action=\"xxx.php\">
<input type=hidden name=uname value=$rec[value]>
<input type=submit value=\"Accept\" id=submit2 name=submit2 ">
</form>
abc;        
?>

我不知道上面的格式是否正确。请建议可支持的格式。

在上面的格式中,我曾经将PHP + HTML脚本存储到str变量中。我听说过htmlentities()htmlspecialcharecters()函数,但我不知道如何使用它们。

如果插入了值,将使用mysql_fetch_row()从前端访问这些值,以显示插入的值。

如果以上是可支持的,建议我举个好榜样。如果没有,那么建议将PHP + HTML脚本存储到变量中哪个更好。

MySQL支持这种类型的查询。

帮助任何人

非常感谢。

2 个答案:

答案 0 :(得分:0)

在您的示例中,您使用的是heredoc语法,其功能类似于双引号字符串。这意味着内容中的变量被扩展。

从PHP 5.3起,您可以使用nowdoc语法

  

单引号字符串heredocs是双引号字符串

来源:PHP Manual on Nowdoc

此示例说明了此语法的用法:

$name = 'MyName';

$str = <<<'EOT'
My name is "$name".
EOT;

echo $str;

这将输出

  

我的名字是“$ name”。

在对插入SQL查询进行清理后,可以将$ str的内容存储到适当的数据库字段中。

答案 1 :(得分:0)

我必须同意上述评论。你应该NOT这样做。 但是,您的代码中存在一些问题:

  • else提交按钮上,您最后有一个",不应该在那里。
  • PHP中包含HTML,没有echo次调用。
  • abc字符串后面有尾随空格。
  • ;字符串之后的abc应该在新行上。

这是&#34;正确&#34;代码:

<?php
$str=<<<abc
$sql=mysql_query("select * from links where column='value'");
$sq1=mysql_fetch_row($sql);
$s1=$rec[13];
$s2='Done';
if($s1==$s2)
{
echo "
<form name=f1 method=post action=\"xxx.php\">
<input type=hidden name=income value=$rec[value]>
<input type=submit value=\"Accept\" id=submit2 name=submit2 disabled=\"disabled\">
</form>
";
}
else
echo "
<form name=f1 method=post action=\"xxx.php\">
<input type=hidden name=uname value=$rec[value]>
<input type=submit value=\"Accept\" id=submit2 name=submit2 />
</form>";
abc
;

echo $str;

希望有所帮助。