2013-11-21 3 views
-1

비슷한 질문이 많이 있지만 어떻게 작동하는지 이해할 수 없습니다. 내 문제는 준비된 문없이 mysql을 사용하여 PHP를 사용하여 첫 번째 프로젝트 (내 첫 번째 모험)를 시작했으며 준비되지 않은 mysql을 사용하여 준비되지 않은 명령문을 사용했다는 것입니다. 진술. 나는 튜토리얼 매뉴얼을 많이 읽고하지만 난 영어로 정말 좋은 아니에요 그리고 난이 만드는 방법을 알아 보았 캔트 : 쿼리에서 가져온 행을 인쇄하십시오.

$stmt = $mysqli->prepare("SELECT (filename,ext) FROM userpic WHERE username= ?"); 
$stmt->bind_param('s', $username); 

행의 수백이있다

을하고 난 파일 이름을 소요 cicle을 만들어야합니다 그리고 ext 그리고 나를 이미지의 경로 밖으로 인쇄하지만 어떻게 파일 이름과 ext로 배열을 꺼내고 모든 행에 대한 cicle을 만들 수 있습니다.

$sql = mysql_query("SELECT filename FROM users WHERE username = '$_SESSION[username]' ")or die(mysql_error()); 
while($row = mysql_fetch_array($sql)) 
{ 
echo "<img id=\"membimagestyle\" src=\"uploads/$row[filename]\"></div>"; 
} 

내가 준비된 문 버전로 MYSQL_ASSOC, $ 행 [파일 이름]을 사용하는 방법을 이해하지 못할 : 그것은 내가 예를 들어이 사용되지 않은 준비된 문에서 작동하는 방법

내가 이해하지 못할.

나를 도와 주신 모든 분들께 감사드립니다 !! & 나쁜 코딩 기술에 대한 사과와 나쁜 영어로 유감스럽게 생각합니다. 나는이 예제가 도움이되기를 바랍니다

+0

을 (대신 : 당신이 다음과 같은 여러 열을 인출하려면 mysql) ?? – vzeke

+0

코드의 두 번째 부분은 이전 소스 였고 이제 mysqli에서 모든 행의 배열을 출력하는 방법을 알지 못한다. – user2996667

답변

-1

당신은 당신이 문제를 해결

$query = "SELECT filename FROM users WHERE username = ?"; 


if($stmt = $mysqli->prepare($query)){ 
    // bind parameter 
    $stmt->bind_param('s', $username); 

    // execute 
    $stmt->execute(); 

    // bind result to a variable 
    $stmt->bind_result($filename); 

    // iterate through the results 
    while ($stmt->fetch()) {   
     echo "<img id=\"membimagestyle\" src=\"uploads/$filename\"></div>"; 
    }  

    // close the statement 
    $stmt->close(); 
} 

편집 : 당신이 mysqli를 사용하지 않는 이유

$stmt->bind_result($filename, $extension); 

while ($stmt->fetch()) { 
    echo "<img id=\"membimagestyle\" src=\"uploads/$filename.$extension\"></div>"; 
} 
+0

감사합니다. 이것은 분명히 한 가지 질문으로 명확한 예가 필요한 것입니다. 쿼리가 2 개 또는 3 개의 필드를 선택하는 경우 질문 하나만 결과에 바인딩하는 방법은 무엇입니까 ?? 예제 쿼리 SELECT 파일 이름 확장자 사용자 이름 username =? 이름과 확장자도 사용할 수있는 변수에 바인딩하는 방법은 무엇입니까? 고마워요 – user2996667

+0

이 질문에 대한 답변을 편집하십시오. 왜 downvote? – stefan

+0

나는 진짜로 아래 투표가 왜 당신에게 긍정적 인 피드백을 줄 수있는 평판 포인트가 없는지 모르겠다. 그리고 나는 당신의 대답이 나의 사례에 완벽하다는 반대표를주지 않았으며, 당신의 도움을 위해 정말로 당신에게 감사한다. – user2996667

관련 문제