2016-10-06 7 views
-4

フォームのあるページにデータを書き込めません。私のコードはデータフォームを保存しません

enter image description here

<section> 
     <form method="POST" action="/teste/registro.php"> 
     <div class="container"> 
      <div class="form-group"> 
      <label for="nome">Nome</label> 
      <input type="text" name="nome" id="nome" placeholder="nome completo"class="form-control" required> 

     </div> 
     <div class="form-group"> 
      <label for="nome">Email</label> 
      <input type="email" name="email" id="email" placeholder="[email protected]"class="form-control" required> 

     </div> 
     <div class="form-group"> 
      <label for="telefone">Telefone</label> 
      <input type="tel" name="telefone" id="telefone" placeholder="telefone residencial" class="form-control" > 

     </div> 
     <div class="form-group"> 
      <label for="telefone">Celular</label> 
      <input type="tel" pattern="^\d{2}-\d{5}-\d{4}$" name="celular" id="telefone" placeholder="telefone celular xx-xxxxx-xxxx" class="form-control" required> 

     </div>  
     <div class="form-group"> 
      <label for="endereco">Endereço</label> 
      <textarea name="endereco" rows="5" class="form-control"></textarea> 

     </div> 

     <div class="form-group"> 
      <label for="assunto">Assunto</label> 
      <input type="text" name="assunto" id="assunto" placeholder="assunto"class="form-control" required> 

     </div> 
     <div class="form-group"> 
      <label for="mensagem">Mensagem</label> 
      <textarea name="mensagem" rows="5" class="form-control"></textarea> 
     </div> 
     <button type="submit" class="btn btn-primary">Enviar</button> 

     </div> 
     </form> 
    </section> 
    <footer> 
    <footer> 

をこの部分、私は地元の銀行と私の接続を示しています:以下は、私が使用していたコードの一部は、それが、その後見て、どのようにconexao.php

<?php 

     $servidor = "localhost"; 
     $usuario = "root"; 
     $senha = ""; 
     $dbname = "contato"; 

     //criando a conexao com o banco 
     $conn = mysqli_connect($servidor, $usuario, $senha, $dbname); 
    ?> 

私は次のようにフォームデータを保存するページを作成しました。

<?php 

     include_once('conexao.php'); 
     $nome  = $_POST['nome']; 
     $email =$_POST['email']; 
     $telefone = $_POST['telefone']; 
     $celular = $_POST['celular']; 
     $endereco = $_POST['endereco']; 
     $assunto = $_POST['assunto']; 
     $mensagem = $_POST['mensagem']; 

     $result_msg_contato = "INSERT INTO tbl_contato(nome, email, telefone, celular, endereco, assunto, mensagem, criada) VALUES ('$nome', '$email', '$telefone', '$celular', '$endereco', '$assunto', '$mensagem', NOW()) "; 
     $resultado_msg_contato = mysqli_query($conn,$result_msg_contato); 
    ?> 

フォームからのデータをERと表示された画面を送信をクリックして、すべて白である:これはPHPMyAdminのとは何の関係もありませんので、話題の

[enter image image with the address after you click send here]

+0

あなたが入力したデータがあるかどうかを確認するためのphpMyAdminをチェックしましたか? – darham

+0

PHPMyAdminはデータベースクライアントアプリケーションです。 PHPで独自のクライアントを作成しているようですので、PHPMyAdminがこれと何をしているのか分かりません。 – Quentin

+0

私たちが知らない構文エラーや制約がない限り、あなたが投稿した内容を見ることができません。エラー報告と 'mysqli_error($ conn)'がここで助けになります。もしそれが何も表示されないなら、あなたは 'http:// localhost'ではなく' file:/// 'としてアクセスしようとしていることを示唆しています、そして/またはあなたにはwebserver/php/mysqlがインストールされています。さらに、アポストロフィのように入力された文字があると、そのためにクエリが失敗しました。 –

答えて

2

タイトルは誤解を招くおそれがあります。 PHPMyAdminはMYSQL用のGUIツールです。

ほとんどの場合、この問題はINSERTというクエリでは発生していますが、エラー報告を使用していないため通知できません。

次のように試してみてください。

<?php 

     $link = mysqli_connect('localhost', 'root', '', 'contato'); 

    /* check connection */ 
    if (!$link) { 
      printf("Connect failed: %s\n", mysqli_connect_error()); 
      exit(); 
    } 

     $nome  = $_POST['nome']; 
     $email = $_POST['email']; 
     $telefone = $_POST['telefone']; 
     $celular = $_POST['celular']; 
     $endereco = $_POST['endereco']; 
     $assunto = $_POST['assunto']; 
     $mensagem = $_POST['mensagem']; 

    $stmt = mysqli_prepare($link, "INSERT INTO tbl_contato (`nome`, `email`, `telefone`, `celular`, `endereco`, `assunto`, `mensagem`, `criada`) VALUES (?, ?, ?, ?, ?, ?, ?, NOW())"); 
    mysqli_stmt_bind_param($stmt, 'sssssssd', $nome, $email, $telefone, $celular, $endereco, $assunto, $mensagem); 

    /* execute prepared statement */ 
    mysqli_stmt_execute($stmt); 

    printf("%d Row inserted.\n", mysqli_stmt_affected_rows($stmt)); 

    /* close statement and connection */ 
    mysqli_stmt_close($stmt); 
+0

私はあなたに私があなたに助けてくれたことをもっと教えてください解決するために私が与えたことをします。 –

+0

あなたを助けてうれしい!あなたの問題を解決した場合、この回答に合格とマークしてください。 :) –

+0

コードをコピーして何も変更せず、エラー404が見つかりませんでした。要求されたURL /teste/teste.ico/salvaregistro.phpがこのサーバー上に見つかりませんでした。 Apache/2.4.18(Win64)PHP/5.6.19 localhostのサーバーポート80とバンクに何も記録されていません –

関連する問題