2014-09-18 2 views
0

내 mysql 쿼리 은 내 로컬 호스트에서 완벽하게 작동하지만 서버에 FTP로 작동하지 않습니다. 문제는 내가 테이블을 동적으로 선택하려면 이후 그 뿐이다 작동 name of the table directly 내가 원하는 것은 아니다 사용하려고 할 때, 그러나 $tbl_prod.MySQL은 로컬 호스트에서 작동하지만 온라인에서는 작동하지 않습니다.

$branch  = $_SESSION['branch']; //value is shukey main_products(yes with space) 
$tbl_prod = $branch . "_products"; //for selecting dynamic table from database 

$query  = mysqli_query($db_connect, "SELECT * FROM `$tbl_prod` ORDER BY `prod_id` DESC LIMIT 5") or exit(mysqli_error()); 

선택 동적 테이블에있다.

$query  = mysqli_query($db_connect, "SELECT * FROM `shukey main_products` ORDER BY `prod_id` DESC LIMIT 5") or exit(mysqli_error()); 

어쨌든이 문제를 해결할 수 있습니까? 이것은 MySQL 버전 또는 무엇인가?

echo "SELECT * FROM `$tbl_prod` ORDER BY `prod_id` DESC LIMIT 5" 

편집 :

또한

, $의 tbl_prod을 둘러싼`마크를 제거를 쿼리를 실행하기 전에

+0

그래서'$ _SESSION [ '지점']의 값이''shukey main'는 Table? (공간이 있나?) – Ghost

+0

@Ghost shukey main_products –

+0

물론 총계는'$ tbl_prod' ='shukey main_products'이지만, 나는 '$ _SESSION ['branch ']'을 언급하고있다. 그것 'shukey main'입니까? – Ghost

답변

1

문제점은 Windows 시스템에서 개발 중이며 서버가 Linux 시스템이라는 것입니다. Windows는 대소 문자를 구분하지 않지만 Linux는 대소 문자를 구분합니다.

쿼리를 실행하려고하면 테이블 이름 하나가 대문자이고 다른 하나는 그렇지 않으면 쿼리가 실패합니다.

table ! =

1

봅니다 정확히 스크립트는 SQL 기본에 전화하려고 상황을 확인하기 위해이 추가 당신은 거기에 이들이 필요하지 않기 때문에.

+0

시도해 봅시다. –

0

var_dump($tbl_prod)이 (가) 추가 문자/공백을 추가로 표시 할 수 있습니다. 변수를 다듬은 다음 쿼리에서 사용할 수 있습니다.

관련 문제