2010-03-25 3 views
2
// First, prepare the statement, using placeholders 
$query = "SELECT * FROM tableName"; 
$stmt = $this->connection->prepare($query); 

// Execute the statement 
$stmt->execute(); 
var_dump($stmt->fetch(PDO::FETCH_ASSOC)); 

while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) 
{ 
echo "Hi"; 
// Export every row to a file 
fputcsv($data, $row); 
} 

를 업데이트하지 않으면 할 수있는이 올바른 방법인가 내가 위해서 var_dump에 대해 false 값을 얻을 않는 이유는 while 루프로 이동하지 않고보다 예보다 경우 csv 파일에 쓰지 마라.(PDO :: FETCH_ASSOC)를 가져 실행할 수 없습니다 및 CSV 파일

제안 사항? 의 위해서 var_dump에 관해서는

fputcsv($fp, $data); 

밖으로 거짓 인쇄 :

$fp = fopen('file.csv', 'w'); 

은 당신이 그것으로 데이터를 입력 할 수없는

+0

당신이 경우 어떻게해야합니까 무엇 var_dump (error_get_last())? – SeanJA

+0

@SeanJA : 'Null'값입니다. – Rachel

답변

1

한 것은 당신이 먼저 CSV 파일을 열 필요가있다 당신이 실제로 생각하고있는 어떤 물건에 대한 더 많은 정보를 제공해야 할 것입니다. (예 : $ this- 무엇> 연결?)

나는이 도움이 될 것입니다 알고 있지만, $ this->에 연결하지 않고 그것을 수행하려고하지 않습니다

$config['database'] = 'sakila'; 
$config['host'] = 'localhost'; 
$config['username'] = 'root'; 
$config['password'] = ''; 

$d = new PDO('mysql:dbname='.$config['database'].';host='.$config['host'], $config['username'], $config['password']); 
$query = "SELECT * FROM actor"; 
$stmt = $d->prepare($query); 

// Execute the statement 
$stmt->execute(); 

var_dump($stmt->fetch(PDO::FETCH_ASSOC)); 

$data = fopen('file.csv', 'w'); 

while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) 
{ 
    echo "Hi"; 
    // Export every row to a file 
    fputcsv($data, $row); 
} 
+0

다른 클래스의 함수에서이 함수를 호출하려고하는데 거기에서 파일을 여는 중이며 데이터 스트림을이 함수로 전달한 다음 프로세스를 더 진행하는 것입니다. 나는 이것이 왜 일어나고 있는지 확신하지 못한다. – Rachel

+0

기본적으로'$ this-> connection'는이 클래스에서 사용하는 다른 DAO 클래스에있는 기본 PDO 연결을 가리 킵니다. – Rachel

+0

아마도 데이터베이스에 연결되어 있지 않고 자동으로 실패하고 있습니까? – SeanJA

관련 문제