2014-04-18 3 views
0

나는 코드를 사용하여 PHP 페이지에 스위치가 . 두 가지 문제, 15 번 줄은 필요하지 않지만 양식은 거기에 없으면 어떤 값도 제출하지 않습니다. 15 번 줄을 지우고 상자를 체크하거나 체크하지 않으면 그 자체로 제출해야합니다. 그렇지 않습니다.체크 박스/제대로 작동하지 스위치

덧붙여, onoff-switch.php는 "OFF"값의 피드백을 제공합니다. "OFF"는 코드에 아무 것도 없기 때문에 어디에서 가져올 수 있는지 알려주지 않습니다. 물론 상자가 선택되지 않은 경우 값이어야합니다.

질문이 체크 박스는 어디에서 잘못 되었습니까?

PHP 코드 : 당신이 온/오프하려면

<?php 
$con=mysqli_connect("localhost","user","pass","db"); 
// Check connection 
if (mysqli_connect_errno()) 
{ 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
} 


if (isset($_POST['formSubmit'])) 
{ 
    // escape variables for security 
    $scanningvalue = mysqli_real_escape_string($_POST['onoffswitch']); 

    $sqlon="INSERT INTO configuration (scanning) VALUES ('$scanningvalue')"; 
    $result=mysqli_query($con, $sqlon); 
    if($scanningvalue=='') $scanningvalue='off'; 
     if($result) 
    { 
     echo "The db operation done (1 record added) and switch value ".$scanningvalue; 
    } 
else 
{ 
    echo "The db operation error and switch value ".$scanningvalue; 
} 

} 

mysqli_close($con); 
?> 
+0

PHP 코드를 표시 할 수 있습니까? – Daan

답변

1

왜 당신은 라디오 버튼 대신에 체크 박스를 사용하지 않는?

+0

아무 문제 없습니다. 똑같은거야. PHP 폼을 읽고 데이터베이스에 보낼 값을 POST해야합니다. 켜기/끄기 값은 실행되기 전에 모든 스크립트에서 읽혀 지므로 꺼져 있지 않아야합니다. – user3399760

2
if($scanningvalue=='') $scanningvalue='off'; 

당신은 쿼리 후 대신 당신이 당신이 값을 설정하는로는 mysql_real_escape_string이 필요하지 않은 $ scanningvalue 그리고 한 가지 더,의 값을 설정 한 후 추가해야한다, 위의 코드를 추가하고 의심의 여지가 없다 의 SQL 주입.

+0

ummm 당신이 나를 잃어 버렸습니다. 위의 코드에서 나는 그 라인이 값을 설정한다고 생각했다. 그 코드를 다른 위치로 옮기려면 어떻게해야합니까? – user3399760

+0

귀하의 의견을 이해할 수 없습니다. –

관련 문제