我现在面临的问题是我无法将变量从iphone传递到php页面。首先,我想将国家名称从iphone传递到php页面。
这是php代码:
$coname=$_POST["c_name"];
$con = mysql_connect("url","username","password");
if (!$con){die('Could not connect: ' . mysql_error());}
mysql_select_db("Appiness", $con);
header("Content-Type: text/xml");
$bilgi= mysql_query("SELECT age,wname,slid,sex FROM user WHERE user.c_name='".$coname."'");
while($sutun= mysql_fetch_array($bilgi))
{
echo $sutun["age"];
echo $sutun["wname"];
echo $sutun["sex"];
echo $sutun["slid"];
}
mysql_close($con);
这是我在xcode中调用php页面的部分
NSString *country=[[NSUserDefaults standardUserDefaults]objectForKey:@"namecountry"];
//url's
NSURL *url = [NSURL URLWithString:@"http://www.trevesstudios.com/get.php"];
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
[request setPostValue:country forKey:@"c_name"];
[request setRequestMethod:@"POST"];
[request setValidatesSecureCertificate:NO];
[request setDelegate:self];
[request startSynchronous];
response = [request responseString];
NSLog(@"%@",response);
任何人都可以帮助我为什么这个代码不工作btw当我尝试更改WHERE c_name ='法国'它的工作原理问题是变量。可以帮助任何人吗?
答案 0 :(得分:1)
要检查的一些事项:
从country
阅读后NSUserDefaults
的值是多少?
NSLog(@"%@",response);
打印出来的内容是什么?
,$coname
是什么?
是否定义了$_POST
?是$_GET
定义的?你可以打印出$_REQUEST
内容(print_r($_REQUEST)
)吗?
编辑:
你可以把这个陈述
echo print_r($_REQUEST);
之前的$coname=$_POST["c_name"];
?
你可以添加这个声明:
echo mysql_errno($con) . ": " . mysql_error($con) . "\n";
执行mysql_query
后?
输出什么?
EDIT2:
使用上面添加的echo
es,我们现在知道post参数到达服务器。您确定数据库中存储了法国的数据吗? mysql_error没有返回任何错误(输出中的0:),所以一切都正常......似乎查询没有返回任何数据,但它没有失败......
无论如何,作为进一步检查,您可以在执行mysql_query之前添加更多语句吗?
echo "SELECT age,wname,slid,sex FROM user WHERE user.c_name='".$coname."'";
所以我们会看到查询的样子......
EDIT3:
请替换:
$coname=$_POST["c_name"];
通过
$coname=$_REQUEST["c_name"];
编辑4:
$bilgi= mysql_query("SELECT age,wname,slid,sex,c_name FROM user");
while($sutun= mysql_fetch_array($bilgi))
{
echo $sutun["age"];
echo $sutun["wname"];
echo $sutun["sex"];
echo $sutun["slid"];
echo $sutun["c_name"];
}