还在试图找出php ...
我有一些PHP工作:
<? php
$returnstr = "";
//get some info...
$returnstr += "title ".$that_info;
//do some stuff...
$returnstr += "notes ".$did_stuff;
echo $returnstr;
?>
测试时这是一个文件,并且工作正常。
现在,测试看起来很好,将php代码移动到自己的文件中并使用函数创建.js文件:
function get_aint_id(aint_nr)
{
jQuery.ajax({
type: "POST",
url: 'get_ta_top_row.php',
data: {functionname: 'get_aint_id', arguments: [aint_nr]},
success: function(data)
{
document.getElementById("notify").innerHTML = data;
},
error: function(data)
{
return 0;
}
});
}
停止工作,总是返回0。
将PHP代码修改为(直接回显值而不是构建字符串):
<? php
//get some info...
exho "title ".$that_info;
//do some stuff...
echo "notes ".$did_stuff;
?>
再次工作!
但现在的问题是我需要返回一些值(状态(成功/错误),ID,一些信息文本等...)。
经过一番搜索,似乎json似乎是最好的选择。所以我将.php修改为:
<?php
header('Content-type: application/json');
$function = $_POST['functionname'];
switch($function)
{
case "get_aint_id":
{
$aint_nr = "%".$_POST['arguments'][0];
get_aint_id($aint_nr);
break;
}
}
function get_aint_id($aint_nr)
{
header('Content-type: application/json');
// Configure connection params
$response_array = array();
// Connect to DB
$conn = odbc_connect( $connect_string, $db_user, $db_pass );
if (!$conn)
{
exit("Connection could not be established.");
}
$query = "SELECT * FROM DBA.db_table ".
"WHERE text_val LIKE '".$aint_nr."'";
$result = odbc_exec($conn, $query);
if (!$result)
{
odbc_close($conn);
$response_array['status'] = "error";
$response_array['message'] = "Failure ".$query;
$response_array['aint_id'] = 0;
exit(json_encode($response_array));
}
odbc_fetch_row($result)
$response_array.['status'] = 'success';
$response_array.['message'] = 'Found: '.odbc_result($result, 2); //<<<<<< line 58
$response_array.['aint_id'] = odbc_result($result, 1);
odbc_close($conn);
echo json_encode($response_array);
}
?>
现在我在PHP错误日志文件中收到错误:
[01-Sep-2015 07:19:51 Europe/Paris] PHP Parse error:
syntax error, unexpected '$response_array' (T_VARIABLE) in
C:\wamp\www\Concepts\get_ta_top_row.php on line 58
(我在上面的代码中标记了第58行)
我还注意到日志中的另一个错误:
[01-Sep-2015 04:06:16 UTC] PHP Warning:
PHP Startup: Unable to load dynamic library
'c:/wamp/bin/php/php5.5.12/ext/php_intl.dll' -
Das angegebene Modul wurde nicht gefunden.
in Unknown on line 0
[01-Sep-2015 04:06:16 UTC] PHP Warning:
PHP Startup: Unable to load dynamic library
'c:/wamp/bin/php/php5.5.12/ext/php_ldap.dll' -
Das angegebene Modul wurde nicht gefunden.
in Unknown on line 0
不确定这是否与上述错误有关。
任何想法?这是我的语法吗?它是缺少的dll吗?到目前为止,php似乎非常温和,也许只是因为我习惯了非常不同的语言?
答案 0 :(得分:0)
为什么使用$response_array.['message']
,.
作为数组。在没有.
$response_array['message'] = 'Found: '.odbc_result($result, 2); //<<<<<< line 58