2017-01-06 6 views
-1

私は2つの方法でそれをやろうとしています。私はhtmlとphpのブートストラップを使ってDBにデータを送ります。投稿する前に私は注意深くstackoverflowを読んで、私がgoogleで見つけたものすべてを試してみてください。助けてください、私はPHPに新しいと本当にそれを学びたい、しかし、このトラブルは、私はこの瞬間の3時間以上を取得します。私の悪い英語のために申し訳ありません(場合は、インドからではありません) 最初の変種。 HTML:PHPエラーフォームからmysqlにデータを送信します

<!DOCTYPE html> 
<html lang="en"> 
    <head> 
     <meta http-equiv="content-type" content="text/html; charset=UTF-8"> 
     <meta charset="utf-8"> 
     <title>Landing Page template</title> 
     <meta name="generator" content="Bootply" /> 
     <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> 
     <link href="css/bootstrap.min.css" rel="stylesheet"> 
     <link href="//netdna.bootstrapcdn.com/font-awesome/3.2.1/css/font-awesome.min.css" rel="stylesheet"> 
     <!--[if lt IE 9]> 
      <script src="//html5shim.googlecode.com/svn/trunk/html5.js"></script> 
     <![endif]--> 
     <link href="css/styles.css" rel="stylesheet"> 
    </head> 
    <body> 
    <div class="background-image"></div> 
<div class="container-full"> 

     <div class="row"> 

     <div class="col-lg-12 text-center v-center"> 

      <h1>Hello</h1> 
      <p class="lead"><u>Sign-up and receive.</u></p> 
      <p class="lead">No ads, no paid scum. No Bullshit.</p> 
      <br><br><br> 

      <form class="col-lg-12" action="dbconnection.php" method="POST"> 
      <div class="input-group" style="width:340px;text-align:center;margin:0 auto;"> 
      <input class="form-control input-lg" title="Don't worry. We hate spam, and will not share your email with anyone." placeholder="Your email" type="text" name="name"> 
       <span class="input-group-btn" > 
       <button class="btn btn-lg btn-primary" type="submit" 
     name="submit" value=" Send">SUBMIT</button></span> 

      </div> 
      </form> 
     </div> 

     </div> 
     <div class="row text-center v-center"> 
     <p class="lead">We Deliver: </p> 


     </div> 
     <!-- /row --> 





    <!-- script references --> 
     <script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script> 
     <script src="js/bootstrap.min.js"></script> 
    </body> 
</html> 

PHP:

<?php 
// connect to the database 
$user_name = "root"; 
$password = ""; 
$database = "emails"; 
$host_name = "localhost"; 
$name = $_POST["name"]; 
$con = mysqli_connect ("localhost","root","","emails") or die("Error ".mysqli_error($con)); 
//check connection 
$name222 = $_POST["name"]; 
$name=mysqli_real_escape_string($_POST['name']); 
mysqli_query("INSERT INTO emails (email) VALUES ('$name')"); 
echo"record added"; 
$result = mysqli_query(); 
if($result){ 

    echo("<br>Input data is succeed"); 

} else{ 

    echo("<br>Input data is fail"); 

} 
echo "Connection opened"; 

mysql_close($con); 
?> 

ERRORS:

警告:\ OpenServerの\ドメイン\ landing-:mysqli_real_escape_string()は正確にCで与えられる2つのパラメータ、1 期待しますcpa \ dbconnection.php on line 11

警告:mysqli_query()は少なくとも2つのパラメータを必要とします(OpenSwitch)を使用しています。のC:¥OpenServer¥domains¥landing-cpa¥dbconnection.phpにある1行目の数値は です。警告:mysqli_query()は少なくとも2つのパラメータを必要とし、0はC:\ OpenServer \ domains \ landing- mysql_close() パラメータ1は、リソース、オブジェクト Cで与えられることを期待:ライン上の\ OpenServerの\ドメイン\着陸-CPAの\のdbconnection.phpライン上のCPAの\ dbconnection.php 14

入力データはfailConnection警告を開いています26

第二の変形例: HTML: 同じ PHP:

<?php 
$servername = "localhost"; 
$username = "root"; 
$password = ""; 
$database = "emails"; 

// Create connection 
$conn = new mysqli($servername, $username, $password, $database); 
mysql_select_db("$database"); 

$name = $_POST["name"]; 
$order = "INSERT INTO emails 

     (email) 

     VALUES 

     ('$name')"; 


$result = mysql_query($order); 

if($result){ 

    echo("<br>Input data is succeed"); 

} else{ 

    echo("<br>Input data is fail"); 

} 


// Check connection 
if ($conn->connect_error) { 
    die("Connection failed: " . $conn->connect_error); 
} 
echo "Connected successfully"; 
?> 

エラー:

警告:mysql_select_dbは():アクセスは 'ユーザーのために拒否された' @ 'localhost' の (パスワードを使用して:NO) Cで:\ OpenServerの\ドメイン\着陸-CPA \ライン上dbconnection.php 12

警告:mysql_select_db(): はCで確立することができなかったサーバへのリンク: ラインの\ OpenServerの\ドメイン\着陸-CPAの\のdbconnection.php 12

警告:するmysql_query():Cに:アクセスが(NO パスワードを使用して): 'localhost 'の@'' ユーザのために拒否された ラインに\ \ OpenServerの\ドメイン着陸-CPAの\のdbconnection.phpを24

警告: mysql_query():C:\ OpenServer \ domains \ landing-cpa \ dbconnectionのサーバへのリンクを に設定できませんでした。ライン上のPHP 24

入力データが正常にfailConnectedさ

+1

これはひどいコードです。それをすべて読んでください。質問を編集して[最小限の、完全で検証可能な例](http://stackoverflow.com/help/mcve)を含めることができますか? – Jerrybibo

+0

すごくたくさんのコードが混乱しています。どこから始めるべきかは不明ですが、ログが提供している手掛かりを見てください。あなたはパスワードベースのmysqlログインのためのパスワードがありません。mysqli_query()に接続変数がありません。以前の接続が失敗したためにそこに接続変数があっても失敗します。 mysql_close()は、パスワードがないために失敗しています。パスワードを入力してエラートレイルに従うと、あなたは幸せになれます。 –

+0

こんにちは、はい、その完全なコードです。 phpmyadminにはパスワードがありません。ログインルートとパスワードは一切ありません。質問を投稿する前に、パスを変更しましたが、まだエラーがあります。 –

答えて

0

は、私はちょうど 主なエラーは私の構文にあった実用的なソリューションをここhttp://www.w3schools.com/php/func_mysqli_real_escape_string.asp

をmysqli_real_escape_stringとGET読ん、これを行っている(コマンドをmysql_string) 、以下のコードは完全に動作します。mb将来の誰かを助けるでしょう:

<?php 
$con=mysqli_connect("localhost","huj","huj","emails"); 

// Check connection 
if (mysqli_connect_errno()) { 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
} 

// escape variables for security 
$firstname = mysqli_real_escape_string($con, $_POST['name']); 


$sql="INSERT INTO emails (email) 
VALUES ('$firstname')"; 

if (!mysqli_query($con,$sql)) { 
    die('Error: ' . mysqli_error($con)); 
} 
echo "1 record added"; 

mysqli_close($con); 
?> 
関連する問題