php - PHP CRUD 和 MySQL 在两个文件上
问题描述
我对 php 和数据库很陌生...
我有一个显示评论的文件,contact.php,在这里显示它和我的Css,因为codepen只有JS,评论表单不显示,评论代码调用classprove.php它在PHP和它就在这里,人们帮助我,构建这些代码......
比有文件kommenter_verwalter.php我将在 Tabelle 上显示我的评论输出。
所以,我有两个文件用于我的评论,classprove.php用于管理我的评论和kommenter_verwalter.php,我将在其中显示它们。
我尝试使用这些代码构建一个文件以在每行旁边使用一个按钮进行删除,这样如果我想删除该行,我单击删除按钮。
编辑新的我的代码
现在搜索我的代码而不连接到我的classprove.php文件。
来自kommenter_verwalter.php的代码,
<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
class ClassProveContakt2
{
private $dbHost = 'localhost'; # Host der Datenbank
private $dbName = 'meine'; # Name der Datenbank
private $dbUser = 'root'; # Name phpmyadmin
private $dbPass = 'pass'; # Passwort
private $name;
private $email;
private $message;
private $datetime;
private $ip;
private $db;
private $connection;
private $id;
private $sql;
private $statement;
private $success;
function CommentToDatabase()
{
// Establish connection with MYSQL Server
try
{
$db = new PDO("mysql:host=localhost;dbname=meine", "root", "pass");
}
catch (PDOException $pe)
{
echo "<br>Cannot connect to database: " . $pe->getMessage();
return false;
}
if(isset($_POST["delete"])) {
try {
$connection = new PDO($id, $name, $email, $message, $datetime, $ip);
$id = $_POST["id"];
$sql = "DELETE FROM mela WHERE id = :id";
$statement = $connection->prepare($sql);
$statement->bindValue(':id', $id);
$statement->execute();
$success = "User successfully deleted";
}catch(PDOException $error) {
echo $sql . "<br>" . $error->getMessage();
}
}
}
function tabelle()
{
$db = $this ->CommentToDatabase();
if ($db)
{
echo "<table id='user' class='table table-bordered'>
<tr>
<th>id</th>
<th>name</th>
<th>email</th>
<th>message</th>
<th>datetime</th>
<th>ip</th>
<th>Delete User</th>
</tr>";
foreach ($db as $row){
echo <<<EOT
<tr>
<td>{$row['id']}</td>
<td>{$row['name']}</td>
<td>{$row['email']}</td>
<td>{$row['message']}</td>
<td>{$row['datetime']}</td>
<td>{$row['ip']}</td>
<td><button type "submit" name="delete" value="{$row['id']}">löschen</button>
</tr>
EOT;
}
echo "</table>";
}
}
}
$News = new ClassProveContakt2;
$News -> CommentToDatabase();
$News -> tabelle();
?>
写的时候sudo tail -n0 -f /var/log/apache2/error.log /var/log/mysql/error.log
现在来了不是错误,但没有显示...
我要观察我没有,
$_POST["删除"]
和
$_POST["id"];
我只用 (name, email and message)构建我的表单, id用 phpmyadmin 构建。. 这些代码有在互联网上找到...
可以请任何人告诉我,如何更改这些部分的代码。
如何在 phpmyadmin 上显示我的 Tabelle ,
我想要文件kommenter_verwalter.php(这里给出),输出仅在带有按钮的表格上显示评论(名称,电子邮件,消息,..),删除此屏幕截图以显示...,并将文件classprove.php保留为 Administrate for Comment 。
谁能帮我解决这个问题,谢谢!
解决方案
上面的错误表明存在错误'
并且 "
您没有正确放置它们,这就是为什么complier
无法parse
处理您的代码的那部分。像下面这样更改该行应该可以工作:
echo "<form action='classprove.php' method='post'>
<tr>
<td> '".$row["id"]."'</td>
<td>'". $row["name"]."'</td>
<td>'". $row["email"]."'</td>
<td> '".$row["datetime"]."'</td>
<td> '".$row["ip"]."'</td>
</tr>
</form>";
推荐阅读
- c# - c#标签文本数据绑定不刷新文本
- responsive-design - 是否可以在 Semantic-UI-React 中创建一个在移动设备上看起来很棒的响应式表格?
- javascript - Rails 选择表单:在提交之前显示和使用选择表单值?
- oracle - 在不同的循环中填充相同的 sys_refcursor
- javascript - 从 http 网页请求本地资源时响应为 401 错误
- netsuite - 如何在 Netsuite 中的高级 pdf 检查模板中获取采购订单项目
- linux - 如何从用户 1 切换到用户 2 并在 linux 中运行一些命令?
- wordpress - WooCommerce 中的产品彼此过于接近
- excel - 停止用目标文件名更改源文件名
- c++ - 为什么 QFileDialog::selectFile 不起作用?