Php 如何从mysql表中获取数据

Php 如何从mysql表中获取数据,php,mysql,ios,web-services,Php,Mysql,Ios,Web Services,我有几个简单的问题 首先,我尝试从数据库中获取姓名,其中姓氏class='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 n

我有几个简单的问题

首先,我尝试从数据库中获取姓名,其中
姓氏class='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项目中使用姓氏=lion的名称,我知道我应该使用url。但是我找不到返回名称的代码部分。在php代码的末尾我应该写什么?return或其他要在xcode中使用的内容。
如何用php发送响应?我想知道。我应该写什么“return$name”或其他什么。我知道呼叫地址。但是我不知道我应该使用什么完整的php代码,你不能在iOS项目中使用php。您需要编写一些objective-c来调用服务器上的URL,该URL以某种格式(xml?json?)返回这些数据,然后让iOS应用程序解析响应。

代码中有很多错误,但最严重的是错误

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

    如果(mysql\u query){//,则无法执行此操作

  • (b) 您不能
    返回“$degisken”
    ,因为
    $degisken
    是MySQL 资源,而不是字符串

  • (c) 您不应该关闭mysql 返回内容后的连接。您不一定需要 完全关闭它,但是如果您要关闭它,请在查询之后关闭它 因为
    返回之后的任何内容都不会被计算(假设
    返回(已触发)
  • (d) 如果您正在查找姓氏为'lion'的情况,则不要在MySQL查询中使用通配符。
    其中姓氏如'%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 />";
   }
} 
$con=mysql\u connect(“localhost”、“yatanada\u ali”、“sifre”);
如果(!$con){
die('error:'.mysql_error());
}
mysql_select_db(“yatanada_iBess”$con);
$degisken=mysql_query(“从姓氏为“%lion%”的人中选择姓名”)或die('Error:'.mysql_Error());
if(mysql_num_行($degisken)){
//您的查询可能会返回大量结果,因此您可能希望循环查询结果:
while($row=mysql\u fetch\u array($query)){
$name=$row['name'];
//用这个名字做点什么…我会回应的。
echo$name。“
”; } }
我认为您不了解如何在PHP中使用mysql_*函数。请查看本页上的示例以获得指导:

$degisken=mysql_query(“从姓氏为'lion'的人中选择姓名”);
如果($degisken){
而($row=mysql\u fetch\u assoc($degisken))
{
echo$row[“name”]。“
”; } }
“你的第二个问题应该是A”一个单独的帖子和B)应该解释你所要完成的任务以及你迄今为止采取的步骤来完成这些步骤。OP应该考虑改变他的数据库密码,因为在这里列出了用户名、密码、dBNEY和域名在他的配置文件中是可见的。我在问题中删除了你的密码。我希望你能更改你的实际密码。这里的用户仍然可以看到原始帖子,因此你的数据库可能有漏洞。感谢代码成功。但我问了其他问题。我需要在我的xcode项目中使用$name。我知道当我需要在mysql中添加数据时,我建议使用post或get,但我不知道如何使用它mysql表中的数据。所以我想我需要像return$name这样的php代码。我会在我的xcode项目中将此代码作为url调用。您可以使用
echo json\u encode($name)
(如果有一个名称,或者如果您想报告一个名称数组,您可以创建一个变量
$names=array()
,然后在while循环中只
$names[]=$name
。然后,循环完成后,说
echo json\u encode($name)
。如果您将其作为URL调用,您还需要运行一个Web服务器,但只需
echo
处理编码数据就可以了。(
return
只在内部返回数据……它不会输出到浏览器/请求代理)好的,本。我有一个问题。我按照你说的做了。这是我的代码:你的问题是什么?你已经非常接近了,但你应该把你的所有结果放入一个多维数组中并对其进行编码(除非你有一个能理解多个单独JSON对象的解析器)。但是,我猜您应该:
$multi_array=array();while($row=mysql_fetch_array($degisken)){$multi_array[]=$row;}echo json_encode($multi_arra);
如何在php中发送响应?我不知道。我应该写什么“return$name”或者别的什么。我知道调用url。但是我不知道我应该使用什么完整的php代码。你需要a)设置一个运行php的web服务器,可以与mysql运行的机器进行对话。b)编写一个脚本,从mysql返回的数据集生成JSON。c)编写一个iOS应用程序,在objective-c中,调用返回JSON的url(来自步骤a和b)然后解析响应并使用它。如果您想在这些步骤中获得帮助,请发布一个关于您尝试过的某个特定问题的问题。我需要在我的xcode项目中使用$name。我的意思是我需要代码结尾。好的,我从表中获得了数据,但我的url如何使用它?我应该写什么返回或其他什么?我想这还不够
$degisken= mysql_query("select name from people where surname='lion'");

if ($degisken){

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