2013-04-05 2 views
-3

mysql 업데이트를 실행하기 전에 조건이 존재하는지 확인하려고합니다.MYSQL 쿼리를 실행하기 전에 조건을 확인하는 방법은 무엇입니까?

if (!mysql_query(
"UPDATE customers SET available_credit = available_credit where userid = '$userid';" 
)) 

{ 
die('Sorry, a database error occurred'); 
} 

을 ...하지만 난 이런 식으로 또 다른 조건을 추가하려고 해요 :이 코드는 아래 WORKS

if (!mysql_query && ($tradein_status == 'Accepted CREDIT')(
"UPDATE customers SET available_credit = available_credit where userid = '$userid';" 
)) 

{ 
die('Sorry, a database error occurred'); 
} 

작동하지 않습니다 요식 - 그것은이 오류가 발생합니다 " 구문 분석 오류 : 구문 오류, 예기치 않은 '('라인 235 "에 /home/bohemeth/public_html/tradeins/save_tradeins.php에서

이 부분입니다 왜 궁금 두 번째 것입니다

if (!mysql_query(
"UPDATE customers SET available_credit = available_credit where userid = '$userid';" 
)) 

... 당신이 지금과 같은 조건 테스트를 위해 다른 곳 할 것 같다있는 상태 후 2 개 괄호와 중괄호로 작성되지 않은 :

if (!mysql_query){ 
"UPDATE customers SET available_credit = available_credit where userid = '$userid';" 
} 

어떤 도움을 주셔서 감사합니다!

+0

'if (! mysql_query &&'. mysql_query()'는 함수입니다. – nickb

+0

고마워. 닉. 그럼 뭐가 더 쓸데 있니? 외부 if 문과 함께 작동하는 문을 래핑합니까? ($ tradein_status == 'Accepted CREDIT') {if (! mysql_query ( "UPDATE customers SET available_credit = available_credit where userid = '$ userid';" )}) –

+0

http://php.net/if ; http://php.net/expressions; http://php.net/operators --- 매뉴얼의 시작 부분에있는 PHP 언어 참고서에 모두 나와 있습니다. 나는 적어도 한 번 참조를 탈피하고 그것을 교차 읽는 것이 좋습니다. – hakre

답변

1

mysql_query은 기능입니다. 더 읽을 수 있도록 그것은 시도로 귀하의 질문에 같은 기록 된 mysql_query('SQL QUERY');

: 그것은 다음과 같이 사용되는

if(!mysql_query(
'SQL QUERY' 
)) 
그것은이 방법으로 작성할 수

: 그래서

if(!mysql_query('SQL QUERY')) 

을, 다른 절을 추가하려면 mysql_query 호출 전이나 후에 추가하십시오. if 선언문 {}에서

if($tradein_status == 'Accepted CREDIT' && mysql_query('SQL QUERY')) 

은 생략 될 수있다. 이 경우, 바로 다음 행은 해당 경우에 실행 된 행입니다. 그래서

는 마무리 : 당신은 함수 이름과 인수 사이에 다른 코드를 쓸 수 없습니다

if($tradein_status == 'Accepted CREDIT' && mysql_query('SQL QUERY')){ 
    die('Sorry, a database error occurred'); 
} 
+0

완벽한 감사합니다! 이 작품! 많이 고맙다 Rocket –

+0

@TimDonahue : 당신을 환영합니다 :-) –

0
if ($tradein_status == 'Accepted CREDIT') 
    mysql_query("UPDATE customers SET available_credit = available_credit where userid = '$userid';") or die("Sorry, a database error occurred"); 

.

+0

나는 본다. bwoebi 귀하의 도움에 감사드립니다! 위의 다른 솔루션과 마찬가지로 솔루션도 훌륭합니다! –

0

mysql_query은 문자열 호출 매개 변수로 쿼리 "UPDATE customers SET available_credit = available_credit where userid = '$userid';"을 전달하는 함수 호출입니다.

mysql_query의 형식이어야한다는 것을 의미 :

mysql_query("UPDATE customers SET available_credit = available_credit where userid = '$userid';") 

는 mysql_query가 쿼리의 결과 인 자원을 .. 반환합니다.

두 번째 조건문을 추가하려면 다음을 수행하십시오

if (!mysql_query("UPDATE customers SET available_credit = available_credit where userid = '$userid';") && ($tradein_status == 'Accepted CREDIT')) 
+0

감사합니다 저스틴! 나의 newb 문제점에 또 다른 우수한 해결책. 감사합니다. –

1
if ($tradein_status == 'Accepted CREDIT' && !mysql_query (
"UPDATE customers SET available_credit = available_credit where userid = '$userid';" 
)) 

{ 
die('Sorry, a database error occurred'); 
} 

는 mysql_query 함수가 아니라 변수입니다. 두 번째 괄호 안의 문자열이 인수입니다.

+0

오 이런. 나는 알았다. .. 그것은 나의 질문의 두 번째 부분에 대한 대답이다. .. 나는 그것을 얻는다. 나는 그것을 시도 할 것이다. 고맙습니다. 업데이트 - 그래, 작동합니다. 감사! –

+0

위시 나는 완전히 작동하기 때문에 당신의 대답도 선택할 수 있었다. 그러나 나는 추측 할 수있는 첫 번째 사람을 선택해야했다. –

+0

아무 문제가없는 남자 ... 나는 다만 빨리 타자를하는 것을 배워야 할 것이다! 다행 이군! – eidsonator

관련 문제