php
  • mysql
  • 2013-03-15 4 views 0 likes 
    0

    는이 코드 도움이 필요합니다 : 그것은 작동하지 않는 이유를 모르겠어요mysql을 변수로 어떻게 업데이트합니까?

    if (isset($_POST['aboutme'])) { 
    $aboutme = $_POST['aboutme']; 
    $aboutme = mysql_real_escape_string($aboutme); 
    mysql_query("UPDATE `users` SET `about_me`='" . $aboutme . "' WHERE `username`='" . $usn . "' LIMIT 1") or die(mysql_error()); 
    } 
    

    하지만, 그것을 변경하려면 적절한 셀을하지 않습니다. 다음은 텍스트 영역입니다.

    <textarea id="aboutme" name="aboutme" rows="4" cols="50"><?php echo "$abme"; ?></textarea> 
    

    오류가 나오지 않아 여기에 어떤 내용이 있는지 알 수 없습니다.

    http://gyazo.com/f36f04c014bb229c1be27cc7a9e5072f.png?1363328064

    +0

    $ aboutme 또는 전체 쿼리를 반향 출력 해보 았는지 확인해 보셨습니까? – SomeSillyName

    +0

    은 ur 문제와 별개로 mysql_real_escape_string을 사용하고 SQL 쿼리를 검증하지 않는 실수를 몇 번하고 있습니다. 어쨌든 UR 질문을 통해 UR 테이블 스키마를 추가 할 수 있습니다 – ScoRpion

    +0

    은 ...에 대한보고 오류입니까? 지금까지 내가 볼 수있는 코드가 잘못되었습니다 .... – alwaysLearn

    답변

    1

    난 강력하게 mysqli로 전환하는 것이 좋습니다.

    also mysql_real_escape_string() requires an active database connection. 양식 경우

    if (isset($_POST['aboutme'])) { 
         $aboutme = $_POST['aboutme']; 
         $aboutme = mysql_real_escape_string($aboutme); 
         $query = "UPDATE `users` SET `about_me`='" . $aboutme . "' WHERE `username`='" . $usn . "' LIMIT 1"; 
    
         mysql_query($query) or die(mysql_error()); 
    
    } 
    print_r($query); 
    

    이이 쿼리 및 트리거를 볼 수 있습니다 것입니다 오류 :

    그래서 당신은 빈 문자열을

    DEBUG를 반환합니다) 첫 번째 데이터베이스 또는는 mysql_real_escape_string (연결해야 correctlly 게시되지 않았습니다 (정의되지 않은 변수 $ 쿼리).

    출력 결과를 보려면 mysql에서 쿼리를 실행할 수 있습니다.

    +0

    이전 시점에 데이터베이스에 연결합니다. – ChrisRockGM

    +0

    0 행 영향을받습니다. (쿼리가 0.0002 초 걸렸습니다) – ChrisRockGM

    +0

    LIMITE 1을 제거하십시오. – bleuscyther

    관련 문제