2015-08-14 226 views
-1

我需要得到一个结果,但我不明白为什么返回一个数组为空。我怎样才能得到一个结果与mysqli和php

function dameUrl($nombreImagen) 
    { 
     $url = 'kk'; 
     $mysqli = @mysqli_connect("localhost", "root", "12345", "pepe"); 
     $mysqli->set_charset("utf8"); 

     if (mysqli_connect_errno($mysqli)) 
     { 
      echo 'la bd no tira, error en conexion'; 
     }else 
     { 
      $sql = "select url_file_dest from resources_imagenes_tym where url_file like %".$nombreImagen; 
      if($res = $mysqli->query($sql)) { 
       $row = $res->fetch_array(MYSQLI_NUM); 
       $url = $row[0]; 
       $res->close(); 
      } 

      $mysqli->close();  
     } 

     return $url; 
} 
+0

你错过了'''在SQL后'like'。应该是'.... url_file like'%“。$ nombreImagen。”'“' – Jeff

+0

检查查询上的错误http://php.net/manual/en/mysqli.error.php加上你也可能有一个可变范围问题 –

+0

嗯......结果是一样的空,但在phpmyadmin中sql是从resources_imagenes_tym中选择url_file_dest,其中url_file类似于'%20070417klpcnavid_251_Ees_MUD%'并且我得到结果 – Arts

回答

1

你没有正确地引用你的WHERE子句。 你应该用单引号括起来的,所以你会得到:

$sql = "select url_file_dest from resources_imagenes_tym " . 
     "where url_file like '%" . $nombreImagen . "'"; 
+0

*“用单引号括起字符串”* - 那就是如果它是一个字符串,'$ nombreImagen'似乎是一个整数。单词“nombre”是几种语言中的“数字”。我只注意到了一个downvote,那不是我的。编辑:似乎已经消失。就像我说的,这不是我的。 –

+0

OP在评论中写道*“where url_file like'%20070417klpcnavid_251_Ees_MUD%'”*所以你是对的,它是一个字符串。另外,看着'dameUrl($ nombreImagen)'函数,注意到了“Url”。 –

相关问题