嘿,我目前的插入 php 文件有问题
我有一个表单.. 用户在其中输入详细信息.. 对于我的表单.. 事件名称、事件日期和位置基本上工作良好的位首先我想在 2 个表中添加一个条目:事件和结果
将条目添加到事件中没有问题
但它不会在“结果”中添加相同的条目
事件表具有以下列:事件 ID、事件名称、事件日期和位置
结果表有:事件 ID、成员 ID、事件名称、分数和地点
事件 ID 是自动递增的
所以它会自动为其分配一个ID
并将其应用于两个表
事件 ID 中的自动增量
起作用的一点是
将条目插入事件表
但是因为事件表和结果表都有“事件名称
我希望这个 php 完全插入事件表的详细信息
但同时,只需将事件名称插入结果表
但事件中的 EventID 必须与结果中的 EventID 生成的数字相同。
以下是我的代码:非常感谢所有帮助!!!
<?
$pdo = new PDO('mysql:host=localhost;dbname=clubresults', 'root', '12345678');
#Set Error Mode to ERRMODE_EXCEPTION.
$pdo->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$query = $pdo->query('SELECT EventID, EventName, EventDate, Location from events');
$rowset = array();
if ($query) {
while ($row = $query->fetch(PDO::FETCH_ASSOC)) {
// Build array of rows
$rowset[] = $row;
}
// Output header first
$headrow = $rowset[0];
print("<table border=\"1\">\n<tr>\n");
// Use $rowset[0] to write the table heading
foreach ($headrow as $col => $val) {
printf("<th>%s</th>\n", $col);
}
print("</tr>");
// Then output table rows.
// Outer loop iterates over row
foreach ($rowset as $row) {
print("<tr>");
// Inner loop iterates over columns using $col => $val
foreach ($row as $col => $val) {
// We don't know your column names, but substitute the first column (the ID) for FIRSTCOL here
printf("<td><a href=\"adminlistresults.php?EventID=%s\">%s</a></td>\n", $row['EventID'],$val);
}
print("</tr>");
}
}
print("</table>");
?>
</form>
</div>
<?
$pdo = new PDO('mysql:host=localhost;dbname=clubresults', 'root', '12345678');
#Set Error Mode to ERRMODE_EXCEPTION.
$pdo->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt=$pdo->prepare('INSERT INTO events (EventName, EventDate, Location)
VALUES (:EventName, :EventDate, :Location)');
$stmt->bindValue(':EventName', $_POST['EventName']);
$stmt->bindValue(':EventDate', $_POST['EventDate']);
$stmt->bindValue(':Location', $_POST['Location']);
$stmt->execute();
?>
<?
$int_event_id = $_GET["EventID"];
if((int)$int_event_id)
{
$stmt=$pdo->prepare('INSERT INTO results (EventName, EventID)
VALUES (:EventResultsName, $int_event_id)');
$stmt->bindValue(':EventName', $_POST['EventResultsName']);
$stmt->execute();
}
?>