PHP/MYSQL向列添加按钮 第一栏第二栏第三栏第四栏第五栏第六栏 一二三四0'按钮在这里'
正如您在上面看到的,我有六列,其中五列包含某种文本,第六列包含一个按钮。我的最终目标是让第六列包含三个按钮,如图所示。这些按钮将允许我编辑、删除,可能还有一个其他功能 不过,就目前而言,我只是想知道如何使用下面的代码在最后一列中显示一个按钮: ColumnOne ColumnTwo ColumnThree Columnfour Columnfive ColumnSix one two three four 0 'Button Here'PHP/MYSQL向列添加按钮 第一栏第二栏第三栏第四栏第五栏第六栏 一二三四0'按钮在这里',php,mysql,button,Php,Mysql,Button,正如您在上面看到的,我有六列,其中五列包含某种文本,第六列包含一个按钮。我的最终目标是让第六列包含三个按钮,如图所示。这些按钮将允许我编辑、删除,可能还有一个其他功能 不过,就目前而言,我只是想知道如何使用下面的代码在最后一列中显示一个按钮: ColumnOne ColumnTwo ColumnThree Columnfour Columnfive ColumnSix one two three four 0
好吧,你需要做一两件事(取决于…)。您可能需要命名“提交”按钮:
<?php
// Create variables to retrieve the POST data
$ID= $_POST['Input1'];
$Email= $_POST['Input2'];
$Name= $_POST['Input3'];
$Company= $_POST['Input4'];
$Price= $_POST['Input5'];
// Connect to the database
mysql_connect ("localhost","Username","Password") or die ('Error: ' . mysql_error());
echo "connected to database!";
mysql_select_db ("Database");
// Insert data into table
$query = "INSERT INTO CustomerInformation (ID, Email,Name,Company,Price,Tab Count,Action) VALUES(
'NULL', '".$ID."', '".$Email."', '".$Name."', '".$Company."', '".$Price."', "Form input type = "button" (something like this!) )";
// Above is my best attempt... I'm sure it's nowhere close (sorry!).
mysql_query($query) or die ('Error updating database');
echo "Database updated successfully!";
?>
但是,如果表中有更多记录,还必须添加记录ID的输入。这稍微复杂一点,因为表单覆盖了整个表,您不知道要选择哪个ID输入。可能的解决方案之一是根据记录的id命名输入按钮,例如:
if (isset($_POST["delete]") {
mysql_query("DELETE FROM ...");
}
将您的代码更改为以下格式,以确保其安全性和功能性:
foreach ($_POST as $name => $value) {
if (preg_match("/^delete_[0-9]+$/", $name)) {
$idArray = explode("_", $name);
$id = addSlashes($idArray[1]);
mysql_query("DELETE FROM ... WHERE id = '" . $id . "'");
}
}
指向图片的链接似乎已断开。为什么要将按钮放入数据库?请查看图片。。。我正在尝试创建类似于此图片的内容,以便能够删除或编辑任何行。您在脚本中混合了行为,插入MySQL数据库不会自动生成UI。您需要一个代码路径,用于从数据库获取数据并显示UI;还有另一个处理UI输入和保存状态(插入/更新/删除)的路径。@James,这是不是:敲响了警钟?当然不要忘记SQL注入保护,但这些是必须在每个PHP动态SQL查询中实现的基本功能。我不清楚我应该把“”放在哪里。当尝试将其放入添加了所有其他数据的行中时,我得到了一个T_字符串错误。也许我把数据放错了?那个输入就是按钮。如果您将其直接插入PHP代码中,请不要忘记转义“-use\”。我完全按照以下方式编写(包括引用):“@Johan当我使用mysql\u real\u escape\u string()时,我在尝试运行此代码时遇到很多错误:警告:mysql\u real\u escape\u string()[函数.mysql real escape string]:第6行/www/solidwebhost.com/f/a/r/farinaevan/htdocs/AddDataToTable.php中用户“vhostswww”@“localhost”(使用密码:否)的访问被拒绝警告:mysql_real_escape_string()[function.mysql real escape string]:无法在线在/www/solidwebhost.com/f/A/r/farinaevan/htdocs/AddDataToTable.php中建立到服务器的链接6@Evan1000x很抱歉,在使用mysql\u real\u escape\u string()之前需要连接到数据库,修复了answer@Evan,错误表明您无法连接到MySQL,因为用户vhostswww
没有对localhost
的访问权限。您需要显式地在localhost上授予用户vhostswww
,在%
(all)上授予用户不包括localhost。@Johan-要使其正常工作,必须设置最后一列(带按钮的那个)一个特殊类型?现在它是一个类型:string,我将得到一个错误“错误更新数据库”。对于我的输入按钮代码,我使用以下命令:$action=mysql\u real\u escape\u string(““””);我发誓我不是个白痴,但是这个PHP的东西还没有让我满意!非常感谢你坚持me@Evan,请在不使用mysql_real_escape_string()的情况下进行尝试:$action='“”;
<input type="submit" name="delete_5" value="Delete this ugly thing" />
foreach ($_POST as $name => $value) {
if (preg_match("/^delete_[0-9]+$/", $name)) {
$idArray = explode("_", $name);
$id = addSlashes($idArray[1]);
mysql_query("DELETE FROM ... WHERE id = '" . $id . "'");
}
}
<?php
// Connect to the database
mysql_connect ("localhost","Username","Password")
or die ('Error: ' . mysql_error());
echo "connected to database!";
mysql_select_db ("Database");
// Insert data into table
$Email= mysql_real_escape_string($_POST['Input2']);
$Name= mysql_real_escape_string($_POST['Input3']);
$Company= mysql_real_escape_string($_POST['Input4']);
$Price= mysql_real_escape_string($_POST['Input5']);
$action = mysql_real_escape_string('insert php code for button here');
$query = "INSERT INTO CustomerInformation
(Email,Name,Company,Price,Tab Count,Action)
VALUES
('$Email', '$Name', '$Company', '$Price', '$action') ";
mysql_query($query) or die ('Error updating database');
echo "Database updated successfully!";
?>