php
  • mysql
  • mysqli
  • 2012-06-09 2 views 1 likes 
    1

    아래의 예에서 mysqli합니다. 내 질문은 정확하게 아래의 mysqli 코드와 위의 mysql 코드와 동일한 동일한 것인가?변환 MySQL은 내가 응용 프로그램에서 제대로 작동 오래된 MySQL의 코드가

    $query = $mysqli->prepare(" 
        SELECT * FROM Tutor t 
        WHERE 
        (t.Tutorusername = '".mysqli_real_escape_string($tutorusername)."') 
        AND 
        (t.Tutorpassword = '".mysqli_real_escape_string($tutorpassword)."') 
        "); 
    
        $query->bind_result($Tutor); 
    
        $num = $query->num_rows($result = $query->execute()); 
    
    
        while($row = $result->fetch()) 
         { 
    
    ... 
    
    } 
    
    +0

    mysqli를 건너 뛰고 곧바로 PDO로 이동하십시오. –

    답변

    2

    SQL 문자열을 연결하기 때문에 여기서는 preapre()을 사용할 필요가 없습니다.

    $sql="SELECT * FROM Tutor t 
          WHERE t.Tutorusername=? AND t.Tutorpassword=?"; 
    
        $stmt=$mysqli->prepare($sql); 
        $stmt->bind_param("s",$tutorusername); 
        $stmt->bind_param("s",$tutorpassword); 
    
        $stmt->execute(); 
    
        //I presume that the table "T" has three columns 
        $stmt->bind_result($col1,$col2,$col2); 
        while($stmt->fetch()) 
        { 
        echo "<br/>", $col1,$col2,$col3; 
        } 
    

    PS : mysqli API에 대한 읽기 PHP 매뉴얼

    $sql="SELECT * FROM Tutor t 
         WHERE 
         t.Tutorusername='".mysqli_real_escape_string($tutorusername)."' 
         AND 
         t.Tutorpassword = '".mysqli_real_escape_string($tutorpassword)."'"); 
    
    $result=$mysqli->query($sql); 
    if($result) 
    { 
    $row=$result->fetch_row(); 
    if($row) 
        print_r($row); 
    } 
    

    당신이 매개 변수를 지정해야합니다() 메소드를 준비하십시오.

    관련 문제