2013-10-10 3 views
1

좋아,이 값을 PHP 파일로 보내는이 양식을 사용하면 PHP 파일에서 $ _POST 메소드의 값을 가져옵니다. 예를 들어 는 :

$min = $_POST['time_min']; 

는 이제 60을 곱하면,이 varibale을 먹고 싶어하고하는 것보다 SQL 함수에 보냈다.

$time = ($min * 60) + $sec; 
$result = update_video($time); 

그리고 SQL에 :

나는 이런 식으로 뭔가하려고 노력

$query = "UPDATE video SET 
time='".$time."' 
WHERE video_id='".$video_id."' 
"; 

을하지만 그것은 단지 업데이트되지 않습니다. 제안 사항이 있으십니까? 모든

+0

게시물을 편집하고 여기에 완전한 양식과 PHP 코드를 추가 해주실 수 있습니까? – EhsanT

답변

0

먼저, 당신은 내가 따옴표를 망치는되도록 모두 timevideo_idINTEGER로 정의 가정, 그러나

UPDATE video SET 
time='600000' 
WHERE video_id='17' 

같은 끝낼. .

+0

'Robert '); DROP TABLE 학생; -'... 훌륭합니다! :-) –

+0

따옴표를 지우지 만 내가 얻는 것은 다음과 같습니다. Notice : 배열을 문자열로 변환 – assaf

+0

배열을 가져 오는 위치를 알 수 없습니다. 'print_r ($ time)'과'print_r ($ video_id)'를 할 수 있습니까? – Amadan

0

값은 String입니다. 먼저 Integer으로 전송해야합니다.

intval()을 시도해보십시오 그런데

$time = (intval($min) * 60) + $sec); // make sure $sec is an Integer as well. 

가 : PDO에서 살펴 보자. SQL이 안전하지 않습니다.

행운을 빈다.

+0

PHP는 프로그래머가 문자열과 숫자의 구분을 거의 느끼지 않아야한다는 것을 디자인 목표 중 하나 (바보 같은 생각이지만 바보)로 가지고 있으며, 자동 변환 모자 한 방울에. 그래서 나는 주조의 부족이 문제라는 것을 의심한다. – Amadan

관련 문제