php - 表连接 SQL/PHP (CRUD)

标签 php mysql crud table-relationships

我有两个这样的表:

[tblFacilityHrs] id uid title description
[tblFacilityHrsDateTimes] id owner_uid startEventDate endEventDate startTime endTime days recurrence finalDate

它们通过 UID 处于一对多关系中: enter image description here

enter image description here

我想加入表,以便我只从 tblFacilityHrsDateTimes 获取 ID 值(这样当我编辑表时,第一个表 tblFacilityHrs 由 UID 编辑,而 tblFacilityHrsDateTimes 由 ID 编辑)。

我如何连接表格以便以这种方式编辑它们?

像这样:

<?php 
include('../config.php'); 
if (isset($_GET['uid']) ) { 
$uid = (int) $_GET['uid'];
$id = (int) $_GET['id'];  
if (isset($_POST['submitted'])) { 
foreach($_POST AS $key => $value) { $_POST[$key] = mysql_real_escape_string($value); } 

//Query for tblFacilityHrs
$sql = "`title` =  '{$_POST['title']}' ,  `description` =  '{$_POST['description']}'   WHERE `uid` = '$uid' "; 
mysql_query($sql) or die(mysql_error()); 

//Query for tblFacilityHrsDateTimes
$sql2 = "`startEventDate` =  '{$_POST['startEventDate']}' ,  `endEventDate` =  '{$_POST['endEventDate']}' ,  `startTime` =  '{$_POST['startTime']}',  `endTime` =  '{$_POST['endTime']}' ,  `days` =  '{$_POST['days']}' ,  `recurrence` =  '{$_POST['recurrence']} ,  `finalDate` =  '{$_POST['finalDate']}' WHERE `id` = '$id' "; 
mysql_query($sql2) or die(mysql_error()); 

echo (mysql_affected_rows()) ? "Edited row.<br />" : "Nothing changed. <br />"; 
echo "<a href='list.php'>Back</a>"; 
} 
$row = mysql_fetch_array (mysql_query("SELECT * FROM `tblFacilityHrs` WHERE `uid` = '$uid'"));
$row2 = mysql_fetch_array(mysql_query("SELECT * FROM `tblFacilityHrsDateTimes` WHERE `id` = '$id'"));
?>

在我的脑海中,我想象表格是这样连接的(但它不起作用):

$result = mysql_query("SELECT uid, title, description FROM tblFacilityHrs LEFT JOIN tblFacilityHrsDateTimes ON tblFacilityHrs.uid = tblFacilityHrsDateTimes.owner_uid ORDER BY tblFacilityHrs.description") or trigger_error(mysql_error());

最佳答案

(升级到答案)

您需要从 tblFacilityHrsDateTimes 中选择列到您的结果集中:

SELECT      uid, title, description, tblFacilityHrsDateTimes.*
FROM        tblFacilityHrs
  LEFT JOIN tblFacilityHrsDateTimes
         ON tblFacilityHrs.uid = tblFacilityHrsDateTimes.owner_uid
ORDER BY    tblFacilityHrs.description

关于php - 表连接 SQL/PHP (CRUD),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10503245/

相关文章:

php - 数据库条目未正确输出

javascript - fb分享不带og :image dynamically

php - 我搞砸了我的where子句吗?得到意想不到的结果

java - 在 MongoDB 3.2 中创建索引以避免重复的文档/行

mysql - visual studio xamarin 和 mysql crud

javascript - 使用History.js存储数据,然后使用数据进行页面的ajax加载

php - 转换变量时的三元运算符

mysql - 根据日期合并数据的sql查询

php - 简单的mailto集成查询

java - 是否有在 Swing 中生成 CRUD UI 的工具或框架?