<?php
select1($conn);
function select2 ($conn,$id ,$name)
{
$stmt = $conn->prepare("SELECT def FROM define WHERE wordkey = ?");
mysqli_stmt_bind_param($stmt, 'i', $id);
$stmt->execute();
$stmt->bind_result($def);
while($stmt->fetch()) {
echo "here"; // for testing
$wordArray += $def;
//I will make a call to the js function here sending id, name and wordArray
}
//$stmt->close();
}
function select1 ($conn){
$stmt2 = $conn->prepare("SELECT id , name FROM words");
$stmt2->execute();
$stmt2->bind_result($id, $name);
while($stmt2->fetch()) {
select2 ($conn,$id ,$name);
}
}
?>
我想问问题我有单词表和def表。在def表中,我有相同单词的多个定义.id。是否可以在一个查询语句中选择它们? 单词表有id,名字 def表有id,wordkey,定义
我想检索名称,并为每个名称选择其所有定义,以便我将调用javascript函数(id,name,defArray) 使用其定义数组显示每个名称。 我想通过2个select语句来做,但问题是select2函数不起作用。
答案 0 :(得分:0)
我可以从你问题的非常有限的细节中假设。
尝试
select a.name, b.definition from words a, def b where a.id=b.word_id
在上面的查询中,我们只是从多个表中访问数据。
请提供更多解释(可能包含代码),以便进行精确的错误修复。
希望它有所帮助,一切顺利!
答案 1 :(得分:0)
假设如下:
<强>字强> ID |字
<强>定义强> ID | WordID |定义
SELECT D.Definition AS definition, W.Word AS word
FROM definitions D, words W
WHERE W.ID = D.WordID
ORDER BY W.Word ASC
这将显示定义行,按照它们对应的单词排序。