2017-03-02 82 views
0

我在這裏呆了幾乎一天我只是找不到合適的解決方案,請幫助我得到的錯誤,沒有選擇數據庫,但我得到的消息連接被創建 我發現了第二誤差未定義指數「SNO」,「客戶端名」,「不接觸」「選項-3(其複選框)」錯誤:沒有數據庫選擇和未定義索引

HTML表單

<form action="survey-data-entry.php" name="1st-form" id="form-control" onSubmit="return validate()" method="post" >  
    <label>S.No.</label> 
<input type="text" class="form-control" placeholder=" 0451211315" name="SNo" id="s.no" > 
<label>Client Name</label> 
<input type="text" class="form-control" name="clientname" id="clientname" />     
<label>Contact No</label> 
<input type="text" class="form-control" name="contactno" id="contactno" /> 
    <strong>Pest Buster </strong> 
<input type="checkbox" name="option_3" id="option_3" value="Pest Buster"> 

這裏是PHP代碼

$hostname = 'localhost'; 
$username ='root'; 
$password = ''; 
$dbname = 'survey-form'; 

$conn = mysql_connect($hostname, $username, $password, $dbname); 
if(!$conn){ 
    die("connection failed:" .mysql_error()); 
} 
echo "connection hogya successful"; 



$SNo = $_POST['SNo']; 
    $clientname = $_POST['clientname']; 
    $contactno = $_POST['contactno']; 
    $option_3 = $_POST['option_3']; 
$sql= "INSERT INTO php-startup (SNo, clientname, contactno, option_3) 
VALUES('SNo', 'clientname', 'contactno ','option_3')"; 

if(!mysql_query($sql)) 
{ 
die('caution' . mysql_error()); 
} 
echo"1 record added"; 
+0

仔細檢查你的數據庫名稱 – Gulshan

+0

這兩者都是代碼同一頁面上?> – Akshay

+2

應停止使用'mysql_ *'功能,並切換到'mysqli_ *'或'PDO'代替。如果所使用的技術是最新的,人們更可能提供幫助。 – apokryfos

回答

1

我不知道, 「任何數據庫中選擇」因爲我沒有前perience使用mysql_*

你可以或者首先,如果變量被設置不檢查,這樣

if(isset($_POST['SNo'])) 
{ 
    $SNo = $_POST['SNo']; 
    $clientname = $_POST['clientname']; 
    $contactno = $_POST['contactno']; 
    $option_3 = $_POST['option_3']; 
    $sql= "INSERT INTO php-startup (SNo, clientname, contactno, option_3)VALUES('SNo', 'clientname', 'contactno ','option_3')"; 

    if(!mysql_query($sql)) 
    { 
     die('caution' . mysql_error()); 
    } 
    echo"1 record added"; 
} 

這將消除未定義的索引錯誤。並停止使用mysql_*語法,它們是depecrated。相反,使用pdomysqlimysqli

+0

謝謝你非常先生..它的工作 –

+0

沒問題,祝你好運! – Swellar

1

數據庫連接

$connection = mysql_connect('localhost', 'mysql_user', 'mysql_password'); 

然後選擇DB

mysql_select_db('database_name',$connection); 

然後執行查詢

if(isset($_POST['SNo'])){ 
     $SNo = $_POST['SNo']; 
     $clientname = $_POST['clientname']; 
     $contactno = $_POST['contactno']; 
     $option_3 = $_POST['option_3']; 
    $sql= "INSERT INTO php-startup (SNo, clientname, contactno, option_3) 
    VALUES('$SNo', '$clientname', '$contactno','$option_3')"; 

    if(!mysql_query($sql)) 
    { 
     die('caution' . mysql_error()); 
    } 
     echo"1 record added"; 
} 
+0

它的工作!謝謝你非常先生... –

1

mysql_connect dose't以數據庫名稱作爲參數see docs。 變化 - >

mysql_connect($hostname, $username, $password, $dbname); 

- >

$con = mysql_connect($host, $user, $pass); 
    if (!$con) { 
     die('Could not connect: ' . mysql_error()); 
    } 
    echo 'Connected successfully'; 
    mysql_select_db($database_name, $con) 
    mysql_close($con); 

我會建議使用mysqli_connect see documentation

$link = mysqli_connect($host, $user, $password, $database_name); 

if (!$link) { 
    echo "Error: Unable to connect to MySQL." . PHP_EOL; 
} 
+0

讓我試試 –

+0

它刪除了我的「沒有數據庫選擇」的錯誤,謝謝很多先生 –