查询不适用于PHP

时间:2013-04-04 09:19:43

标签: php mysql

我有以下查询,我正在尝试制作,但我不能让它工作,任何建议?

function getPrelaciones($carnet){

$result = ("SELECT mhm.Materia_codigo1 FROM Materia_has_Materia mhm, Materia m, (SELECT mha.Materia_codigo as materianovista FROM Materia_has_Alumno mha WHERE mha.Alumno_carnet = '%s')as n WHERE n.materianovista = mhm.Materia_codigo AND mhm.Materia_codigo1 != ' ' AND n.materianovista = m.codigo", $carnet);
print json_encode($result);
}

3 个答案:

答案 0 :(得分:1)

您尚未执行查询。将此更改为,

$result = mysql_query("SELECT mhm.Materia_codigo1 FROM Materia_has_Materia mhm, Materia m, (SELECT mha.Materia_codigo as materianovista FROM Materia_has_Alumno mha WHERE mha.Alumno_carnet = '%s')as n WHERE n.materianovista = mhm.Materia_codigo AND mhm.Materia_codigo1 != ' ' AND n.materianovista = m.codigo", $carnet);

这只在您使用mysql时才有用。如果不是,则必须根据驱动程序执行查询。

注意:如果您现在使用,我建议不要使用mysql函数。转到 mysqli PDO

答案 1 :(得分:0)

你错误地调用了查询。

php需要知道查询的位置。

示例:

$result = mysql_query("SELECT * FROM Persons");

在这里阅读有关mysql查询的更多信息: http://php.net/manual/en/function.mysql-query.php

答案 2 :(得分:0)

试试这个并且是$ carnet连接字符串变量?

function getPrelaciones($carnet){

$result = mysql_query("SELECT mhm.Materia_codigo1 FROM Materia_has_Materia mhm, Materia m, (SELECT mha.Materia_codigo as materianovista FROM Materia_has_Alumno mha WHERE mha.Alumno_carnet = '%s')as n WHERE n.materianovista = mhm.Materia_codigo AND mhm.Materia_codigo1 != ' ' AND n.materianovista = m.codigo", $carnet);
$rows = mysql_fetch_assoc($result);
print json_encode($rows);
}