如何从mysql表中获取数据

时间:2012-02-20 21:55:49

标签: php mysql ios web-services

我有几个简单的问题。

首先,我试图从surname='lion'的数据库中获取名称。我写了一个php文件,但它不起作用:

$con = mysql_connect("localhost","yata_ali","password");

if (!$con){
   die('error: ' . mysql_error());    
}

mysql_select_db("yatanada_iBess", $con);

$degisken = mysql_query("select name from people where  surname LIKE '%lion%'");

if(mysql_query){
   return "$degisken";
}  

 mysql_close($con);

?>

我编写了这段代码并尝试在我的xcode项目中使用$ degisken。但它没有用。 不久我试图在我的ios项目中使用姓氏姓氏=狮子,我知道我应该使用url.but我找不到返回名称的代码部分我应该在PHP代码的末尾写什么?返回或在xcode中使用的其他内容。 我如何在PHP中发送响应?我不知道。我应该写什么“返回$ name”或其他东西。我知道电话网址。但我不知道我将使用的完整PHP代码

4 个答案:

答案 0 :(得分:1)

您无法在iOS项目中使用PHP。您需要编写一些objective-c来调用服务器上的URL,该服务器以某种格式(xml?json?)返回此数据,然后让iOS应用程序解析响应。

答案 1 :(得分:0)

您的代码中存在很多错误,但最严重的是

  • (a)您正在运行无效测试:

    if(mysql_query){//你不能这样做

  • (b)您不能return "$degisken";因为$degisken是MySQL 资源,而不是字符串。

  • (c)你不应该关闭你的mysql 返回后的连接。你不一定需要 完全关闭它,但如果你要去,请在查询后关闭它 因为return之后的任何内容都不会被评估(假设是 返回被触发)。
  • (d)如果您正在寻找surname ='lion'的情况,那么请不要在MySQL查询中使用通配符。 where surname LIKE '%lion%'将匹配'scalion','lioness','slioner'等。

您的代码应如下所示:

$con = mysql_connect("localhost","yatanada_ali","sifre");
if (!$con) {
    die('error: ' . mysql_error());
}

mysql_select_db("yatanada_iBess", $con);

$degisken = mysql_query("select name from people where surname LIKE '%lion%'") or die('Error: '. mysql_error());

if (mysql_num_rows($degisken)){
   //your query could return lots of results, so you may want to loop through results:
   while($row = mysql_fetch_array($query)){
       $name = $row['name'];
       //do something with the name... I'm going to echo it.
       echo  $name . "<br />";
   }
} 

答案 2 :(得分:0)

我认为您不了解如何在PHP中使用mysql_ *函数。请查看此页面上的示例以获取指导:http://www.php.net/manual/en/function.mysql-query.php

答案 3 :(得分:0)

$degisken= mysql_query("select name from people where surname='lion'");

if ($degisken){

  while($row = mysql_fetch_assoc($degisken))
  {
     echo $row["name"] . "<br/>";
  }
}
相关问题