2013-06-26 3 views
0

이전 IDS의 테이블 정보를 가져 오는 ID를 사용하려고합니다. 그러나 $query3은 항상 FALSE을 반환하며 ' 알아낼 것 같아. 데이터베이스에 연결되어 있는데이 테이블에 액세스 할 수있는 권한이 있습니다. id는 각 경우에도 정확합니다.다른 sql-statement에서 sql-statement 결과를 사용합니다.

CODE 당신이 아직 열려있는 동안, 같은 $con 개체에 대한 쿼리를 실행하려고

int(1022) 
bool(false) 
int(1023) 
bool(false) 
int(2033) 
bool(false) 
+0

실제로 '1022'라는 테이블이 있습니까? 또한, 백틱 :'$ con-> query ("DESCRIBE'$ teamId'");'' –

+0

예. 백틱을 추가했지만 출력은 여전히 ​​동일합니다. –

+0

* 정확히 * 시도 하시겠습니까? 1022라는 테이블을 가지고 계십니까? 무엇을'DESCRIBE'하려고합니까? 왜 이드를 사용하고 있니? 당신의 목표는 무엇입니까? 결과물은 무엇입니까? –

답변

1

global $con; 
$query = $con->prepare("SELECT * FROM allTeams WHERE Coach = ?"); 
$query->bind_param('s',$username); 
$query->execute(); 
$query->bind_result($Id,$time,$day,$coach,$hCoach); 

$date = date('d-m'); 
$array = array(); 

while($row = $query -> fetch()) 
{ 
    var_dump($Id); 
    echo "<br />"; 
    $teamId = strval($Id); 
    $query3 = $con -> query("DESCRIBE `$teamId`"); 
    var_dump($query3); 
    echo "<br />"; 
} 

OUTPUT. 너는 그렇게 할 수 없다.

새 쿼리를 실행하기 전에 먼저 store_result을 호출하여 첫 ​​번째 쿼리를 닫습니다.

global $con; 
$query = $con->prepare("SELECT * FROM allTeams WHERE Coach = ?"); 
$query->bind_param('s',$username); 
$query->execute(); 
$query->store_result(); 
$query->bind_result($Id,$time,$day,$coach,$hCoach); 

$date = date('d-m'); 
$array = array(); 

while($row = $query -> fetch()) 
{ 
    var_dump($Id); 
    echo "<br />"; 
    $teamId = strval($Id); 
    $query3 = $con -> query("DESCRIBE `$teamId`"); 
    var_dump($query3); 
    echo "<br />"; 
} 
관련 문제