2017-10-28 4 views
0

Ich habe ein Problem beim Einfügen von Daten in die Datenbank, es wird kein Fehler angezeigt, aber die Daten werden nicht in die Datenbank eingefügt.Daten werden nicht in die Datenbank eingefügt, es wird kein Fehler angezeigt

-Controller-Code

function FormData($data){ 
    if (!empty($_POST['name'])) { 
     $data = array(
      'name'  => $this->input->post('name'), 
      'position' => $this->input->post('position'), 
      'about_me' => $this->input->post('about_me'), 
      'contact_me' => $this->input->post('contact_me'), 
      'email'  => $this->input->post('email'), 
      'temp_addr' => $this->input->post('temp_addr'), 
      'perm_addr' => $this->input->post('perm_addr'), 
      'skill'  => $this->input->post('skill'), 
      'photo'  => $this->input->post('photo'), 


     ); 
     $this->Maboutus->form_insert($data); 
     redirect('/admin'); 
    } 
} 

Model Code

function form_insert($data){ 
    $this->db->insert('aboutus',$data); 
} 

anzeigen Datei

<div class="container"> 
     <div class="col-md-8"> 
      <form action="#" method="POST" class="form-horizontal"> 

       <div class="col-md-12"> 
        <div class="form-group"> 
         <lebel for="name" class="col-md-4" >Name :</lebel> 
         <input type="text" name="name" id="name" class="col-md-8" placeholder="your name " required>     
        </div> 
       </div> 
       <div class="clearfix"></div> 

       <div class="col-md-12"> 
        <div class="form-group"> 
         <lebel for="position" class="col-md-4" >Position :</lebel> 
         <input type="text" name="position" id="position" class="col-md-8" placeholder="your position " required>     
        </div> 
       </div> 
       <div class="clearfix"></div> 

       <div class="col-md-12"> 
        <div class="form-group"> 
         <lebel for="position" class="col-md-4" >About Me :</lebel> 
         <input type="text" name="about_me" id="about_me" class="col-md-8" placeholder=" your name About me " required>    
        </div> 
       </div> 
       <div class="clearfix"></div> 

       <div class="col-md-12"> 
        <div class="form-group"> 
         <lebel for="position" class="col-md-4" >Mobile No :</lebel> 
         <input type="text" name="contact_me" id="contact_me" class="col-md-8" placeholder=" your Mobile number" required> 
        </div> 
       </div> 
       <div class="clearfix"></div> 

       <div class="col-md-12"> 
        <div class="form-group"> 
         <lebel for="position" class="col-md-4" >Email :</lebel> 
         <input type="text" name="email" id="email" class="col-md-8" placeholder=" your email " required>     
        </div> 
       </div> 
       <div class="clearfix"></div> 

       <div class="col-md-12"> 
        <div class="form-group"> 
         <lebel for="position" class="col-md-4" >Temporary Addr :</lebel> 
         <input type="text" name="temp_addr" id="temp_addr" class="col-md-8" placeholder=" your Temporary Address " required> 
        </div> 
       </div> 
       <div class="clearfix"></div> 

       <div class="col-md-12"> 
        <div class="form-group"> 
         <lebel for="position" class="col-md-4" >Permanent Addr :</lebel> 
         <input type="text" name="perm_addr" id="perm_addr" class="col-md-8" placeholder=" your Permanent Address " required> 
        </div> 
       </div> 
       <div class="clearfix"></div> 

       <div class="col-md-12"> 
        <div class="form-group"> 
         <lebel for="position" class="col-md-4" >Skill :</lebel> 
         <input type="text" name="skill" id="skill" class="col-md-8" class="col-md-8" placeholder="your skill " required>     
        </div> 
       </div> 
       <div class="clearfix"></div> 

       <div class="col-md-12"> 
        <div class="form-group"> 
         <form action="upload.php" method="post" enctype="multipart/form-data"> 
         <input type="file" class="col-md-8" name="photo" id="photo"> 
        </div> 
       </div> 

      <div class="col-md-12"> 
       <div class="form-group"> 
        <input class="col-md-8" class="btn btn-primary" type="submit" value="Submit"></br></br> 
       </div> 
      </div> 
       </form> 
     </div> 

: Ich bin in ph p, Daten werden nicht in die Datenbank eingefügt, und es zeigt keinen Fehler, was kann ich tun? bitte jemand mir helfen. Ich habe versucht, zu suchen, aber ich finde nichts falsch .. helfen Sie mir aus diesem Problem

+0

Schalten e hinzufügen Rror Berichterstattung durch Hinzufügen dieser 'error_reporting (E_ALL);' in Ihrer Datei index.php –

+0

ich versuchte, aber nichts bekommen –

+0

Was ist das '$ data' hier ->' function FormData ($ data) {'? Sie geben diese URL nicht in Form weiter und laden auch keine Ansicht in diese Methode. – Tpojka

Antwort

1

Sie sind nicht auf eine Controller/Methode, so dass die Post geht nirgends. In der Ansicht ändern Sie die Zeile

<form action="#" method="POST" class="form-horizontal"> 

dieser

<form action="<?php echo base_url('controller_name/FormData'); ?>" method="POST" class="form-horizontal"> 

In der Steuerung die Definition der Funktion FormData dieser

function FormData(){ ... 

ändern Sie haben kein Argument so don geben müssen Ich benötige die Methode nicht, um eine zu erhalten.

Das nächste Bit ist nicht relevant für Ihr Problem, aber eine Verfeinerung zu prüfen. Sie müssen kein neues Array erstellen, um es an das Modell zu senden. Da $_POST mit Ihren Feldern gefüllt wird und Ihre Tabellenspaltennamen genau mit den Feldnamen des Formulars übereinstimmen, können Sie einfach $_POST an das Modell senden.

$this->Maboutus->form_insert($_POST); 

Wenn es Daten wurde geschrieben, dass Sie nicht würden Sie auf das Modell schicken wollte unset diese Indizes vor dem Einsatz zu tun. Es sollte wahrscheinlich in dem Modell getan werden, so dass Sie nicht mit der tatsächlichen $_POST Array zu verwirren. Zum Beispiel:

function form_insert($data) 
{ 
    unset($data['not_to_be_inserted_key']); //remove this item from array 
    $this->db->insert('aboutus', $data); 
} 

Aber das ist nicht erforderlich in dem Beispiel, das Sie zeigen.

0

Ich nehme an, Sie erhalten erfolgreich die $ _POST auf Ihrem Controller, dann das Problem, das ich sehen kann, ist das Modell, vor allem müssen Sie es initialisieren, wenn Sie nicht haben, können Sie es mit dem folgenden in Ihrem __construct tun

public function __construct() { 
     parent::__construct(); 
     $this->load->model('Maboutus_model'); 
    } 

Bitte beachten Sie immer brauchen die „_model“ nach dem Modellnamen

und beim Aufruf der Funktion, die Sie tun es mit

$this->Maboutus_model->form_insert($data); 
Verwandte Themen