2013-12-11 4 views
0

Я пытаюсь вставить информацию в таблицу, используя классы и функции.PHP - Почему я не могу вставить информацию в таблицу?

Я не знаю, почему, но моя функция не работает. Хотя он распознает мою базу данных, он отправляет сообщение об ошибке, когда я отправляю форму.

Что мне нужно изменить?

Вот моя страница формы код:

<?php 
include("BDMySQL.class.php"); 
?> 

<html> 
<head> 
    <title>Registo</title> 
    <link rel="stylesheet" href="css/style.css" type="text/css"/> 
</head> 

<body> 
    <span id="background"></span> 
    <div id="page"> 
     <div id="sidebar"> 
      <div id="logo"> 
       <a href="index.html">Apenas as melhores da <em>BlastingBeats Rec.</em></a> 
      </div> 

      <ul id="navigation"> 
      <li><a href="Index.html">Home</a></li> 
       <li class="selected"><a href="login.html">Login</a></li> 
       <li><a href="registo.html">Registar</a></li> 
      </ul> 

      <ul id="connect"> 
       <li><a href="http://facebook.com/freewebsitetemplates" target="_blank" class="facebook"></a></li> 
       <li><a href="http://twitter.com/fwtemplates" target="_blank" class="twitter"></a></li> 
       <li><a href="" class="link-us"></a></li> 
      </ul> 
      <div class="footer"> 
       &copy; Copyright &copy; 2011.<br/> 
       <a href="index.html">Company name</a> all rights reserved. 
      </div> 
     </div> 
     <div id="contents"> 
     <ul class="images"> 




     <?php 
if($_POST['Nome']=="") { 
?> 
     <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST"><p> 
     Nome de Utilizador:<p> 
     <input type="text" name="Nome"></input><p> 
     Palavra-Passe:<p> 
     <input type="text" name="Pass"></input><p> 
     <input type="submit" class="button"><p> 
     </form> 
     <?php 
} 
else { 
?> 

<?php 
include("Cliente.class.php"); 

          $Cliente = new Cliente(); 
          if($Cliente->introduzirCliente($_REQUEST['Nome'], $_REQUEST['Pass'])) { 
           echo "Registo efectuado com sucesso !!!<br>"; 
          } else { 
           echo "Problema encontado no Registo !!!<br>"; 
           echo mysql_errno() . "\n"; 
          } 
         $Cliente->endCliente(); 


} 
?> 


      </ul> 
     </div> 
    </div> 
</body> 
</html> 

Мой код функции:

function introduzirCliente($Nome, $Pass) { 


      $sql = "INSERT INTO clientes VALUES ('$Nome' , '$Pass')"; 
      if($this->bd->executarSQL($sql)) return true; 
      else return false; 
     } 
+3

Если вы дадите сообщение об ошибке при отправке формы, не могли бы вы включить ее в свой вопрос? – andrewsi

+0

его сообщение об ошибке: ошибка 1136 – user2727351

+0

Вам не хватает некоторых столбцов для вашей вставки. – cgTag

ответ

1

Я буду считать, что у вас есть больше, чем просто два поля в таблице базы данных clientes. Таким образом, вы должны изменить SQL линию от:

$sql = "INSERT INTO clientes VALUES ('$Nome' , '$Pass')"; 

к чему-то вроде:

$sql = "INSERT INTO clientes (username, password) VALUES ('$Nome','$Pass')"; 

где вы заменить на имя правильного поля для имени пользователя и пароля.

Смежные вопросы