首次处理将多个表单传递给单个UPDATE查询(新增到php)
此脚本正在拉动并显示数据库表行中的所有数据,并通过textarea(s)中的$ currentadcode显示它 根据数据库中的行数,它会反复重复此代码以显示数据,然后显示下一页的限制,以查看其余部分。
textarea(s)名称adcode $ ID成为adcode1 adcode2 adcode3,提交按钮名称editad $ ID成为editad1 editad2 editad3。
echo "<div class=\"adcodearea\">";
echo "<h2>$ID : $adname</h2><a href=\"?action=deletead&IDnum=$ID\">Delete Ad</a><br />\n";
echo "Preview :<br /><div class=\"adcode\">$currentadcode</div><br /> \n";
//echo "<br />\n";
echo "<form action=\"editad.php?action=editad\" name=\"addAD$ID\" method=\"post\">\n";
echo "AD code (can be any type of script) text link, javascript or banner :<br />\n";
echo "Current AD Code :<br /><textarea name=\"adcode$ID\" wrap=\"physical\" cols=\"72\" rows=\"6\" onKeyDown=\"textCounter(document.addAD$ID.adcode$ID,document.addAD$ID.remLen$ID,5000)\" onKeyUp=\"textCounter(document.addAD$ID.adcode$ID,document.addAD$ID.remLen$ID,5000)\">$currentadcode</textarea>";
echo "<br /><input readonly type=\"text\" name=\"remLen$ID\" class=\"adcountdown\" size=\"2\" maxlength=\"3\" value=\"5000\">Characters Left \n";
echo "<input type=\"submit\" name=\"editad$ID\" class=\"adsubmit\" value=\"Edit AD Code\"></form>\n";
echo "</div>";
echo "<br /><hr />";
//echo "$letknownedited";
它将textarea中的数据传递给此代码接收的editad.php。
if ($_GET['action'] == "editad") { // Edit AD
$newadcode = mysql_real_escape_string($_POST['adcode' . $ID]);
$doedit = "UPDATE `adgate`.`ads` SET `ads`.`adcode` = '$newadcode' WHERE `ads`.`ID` = '$ID' LIMIT 1" or die(mysql_error());
$retval = mysql_query( $doedit, $connection );
if(! $retval )
{
die('Could not update data: ' . mysql_error());
}
echo "Updated data successfully\n";
//header("Location: displayads.php");
但它只获得页面上的第一个textarea数据/最低广告代码$ ID - 即使您编辑页面上的最后一个。 如果您尝试编辑页面上第一个(adcode8)以外的任何其他广告,则会抛出此
当前页面上的第一个广告(adcode8)。
所以我的想法可能会将代码传递给IF,ELSEIF,ELSE,但这不会起作用,因为它可能是无限量的广告。
所以留下HIDDEN表单字段我不认为我需要做,因为我将一个唯一的名称= \“editad $ ID \”传递给
$newadcode = mysql_real_escape_string($_POST['adcode' . $ID]);
这一行是错误的还是我正在尝试做的事情,并且需要尝试HIDDEN表单字段? 这是变量
然后..
如果HIDDEN表单字段是这样的
<input type="hidden" name="$ID" value="$ID">
如何调整此代码,我甚至可以通过
$ newadcode = mysql_real_escape_string($ _ POST ['adcode'。$ ID]);
目标: 允许任何TEXTAREA和UPDATE仅在MYSQL数据库中的代码/行的可用性