2014-01-23 9 views
2

치명적인 오류가 발생했습니다 : # 4 행의 참조로 매개 변수 3을 전달할 수 없습니다. 해결책을 제발 제안 해주세요. 제본 부분을 동적으로하고 싶습니다.PHP 준비 문구 문제

$values = array($username,$password); 
$query = "select * from users where email_id = ? and password = ?" 
$this->con = new mysqli('localhost', 'username', 'password','dbname'); 
$stmt = $this->con->prepare($query); 
$count = 0; 
for ($i = 0; $i < count($values); $i++) { 
    $stmt->bind_param(++$count,$values[$i], PDO::PARAM_STR,12); 
} 
if ($stmt->execute()) { 
    while ($row = $this->stmt->fetch()) { 
     $data[] = $row; 
    } 
    return $data; 
} else { 
    return null; 
} 
+0

은 아마 당신도 포함해야한다는'$의 query' 무엇입니까? 또한이 문제를 해결하기 위해 지금까지 시도한 것은 무엇입니까? – Styphon

+0

@Styphon 필요한 모든 정보를 추가했습니다. 지금 제안하십시오. – Sandy

+0

PHP 함수에 대한 문서를 읽는 방법을 배우는 것이 좋습니다. ** 분명히 ** 문서는 매개 변수 3이 ** 참조 **라고 말합니다. ** INTEGER VALUE **를 보내고 있습니다. ** VARIABLE **이 아닙니다. 이것들은 기본 사항이므로 반드시해야 할 일과해야 할 일은 이러한 질문을하기보다는 PHP를 사용하는 방법을 배우는 것입니다. –

답변

1

사용 bindValue()

$stmt->bindValue(++$count,$values[$i], PDO::PARAM_STR,12);