-1

作成しようとしている次のクエリがありますが、動作させることができません。何かアドバイスはありますか?

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);
}
4

3 に答える 3

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に移動します。

于 2013-04-04T09:20:48.723 に答える
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);
}
于 2013-04-04T09:34:13.913 に答える
0

あなたはクエリを間違って呼び出しました。

php は、クエリがどこにあるのかを知る必要があります。

例:

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

mysql クエリの詳細については、http: //php.net/manual/en/function.mysql-query.phpを参照してください。

于 2013-04-04T09:22:28.147 に答える