Interogarea Insert nu funcționează în formular

4 dec. 2014, 07:39:45
Vizualizări: 35.2K
Voturi: 0

Mulți au pus aceeași întrebare, am citit acele lucruri și situația mea este diferită,

Încerc să introduc niște valori în baza de date din formular dar acestea nu sunt inserate

Am un tabel în baza de date care are 6 coloane și vreau să introduc valori doar în 4 dintre coloane

Numele Tabelului: wp_contactus

6 Coloane

  • id
  • firstname
  • lastname
  • email
  • query
  • reg_date

Acesta este codul pentru inserarea doar în cele 4 coloane

4 Coloane

  • firstname
  • secondname
  • email
  • query

    <div class="wrap">
        <form action="" method="post">
            Prenume <input type="text" name="firstNametxt" value="" /><br/>
            Nume <input type="text" name="lastNametxt" value="" /><br/>
            Email <input type="text" name="email" value="" /><br/>
            Întrebare <input type="text" name="query" value="" /><br/>
            <input name="Submit" type="submit" value="Trimite">
        </form>
        <form method="post">
            <?php   
            global $wpdb;
                    $firstName = $_POST["firstNametxt"];
                    $lastName = $_POST["lastNametxt"];
                    $email = $_POST["email"];
                    $query = $_POST["query"];
    
                    echo $firstName;
            $contactus_table = $wpdb->prefix."contactus";
    
            $sql = "INSERT INTO $contactus_table (id, firstname, lastname, email,                                               
    
              query, reg_date) VALUES ('2', $firstName, $lastName, $email, $query,
    
              CURRENT_TIMESTAMP);";                  
    
              $wpdb->query($sql)) 
    
       ?>
       </form>
       </div>
    
       <?php
            }
            add_shortcode( 'CONUS', 'contactus_shortcode' );
    
       ?>
10
Comentarii

De ce trimiteți ID-ul? ID-ul ar trebui să fie Auto Incrementat în baza de date.

Mayeenul Islam Mayeenul Islam
4 dec. 2014 07:59:24

da, nu știu, îmi pare rău, cum ar trebui să fie codul? poți să-l reatribui corespunzător..

lost_in_magento lost_in_magento
4 dec. 2014 08:00:34

Cum pot adăuga id și marca temporală în rând? Poți să-mi spui?

lost_in_magento lost_in_magento
4 dec. 2014 08:16:23

@rajesh șterge primul element din VALUES (adică 2) și id, după $contactus_table

Mayeenul Islam Mayeenul Islam
4 dec. 2014 08:43:40

@MayeenulIslam Mulțumesc mult pentru răspuns...!! Ai verificat ultima coloană, ce să fac cu ea?

lost_in_magento lost_in_magento
4 dec. 2014 08:45:56

De ce soluția lui @RRikesh nu funcționează pentru problema ta?

Mayeenul Islam Mayeenul Islam
4 dec. 2014 08:47:10

Am verificat dar nu știu cum să codez.. poți să mă ajuți..!!

lost_in_magento lost_in_magento
4 dec. 2014 08:49:04

Am făcut asta frate... nu merge

lost_in_magento lost_in_magento
4 dec. 2014 09:27:47

$wpdb->insert( '$contactus_table', array( 'firstname' => '$firstName', 'lastname' => '$lastName', 'email' => '$email', 'query' => '$query' ), array( '%s', '%s', '%s', '%s' ) );

lost_in_magento lost_in_magento
4 dec. 2014 09:28:10
Arată celelalte 5 comentarii
Toate răspunsurile la întrebare 2
0

Mi-am dat seama de eroarea din interogare, vă mulțumesc tuturor pentru răspunsuri, iată fragmentul de cod:

  <?php
  global $wpdb;
  $contactus_table = $wpdb->prefix."contactus";
        //eroare în interogare
        $sql = "INSERT INTO $contactus_table (firstname, lastname, email, query, reg_date) VALUES ('$firstName', '$lastName', '$email', '$query', CURRENT_TIMESTAMP)";

               if($wpdb->query($sql)) 
               {
               $BlogName = get_bloginfo();
               echo $BlogName;
               }
   ?>
5 dec. 2014 07:26:20
2

Trebuie să o faci singur. Acesta este doar un cadru al ceea ce ar trebui să fie cel puțin. Caută mai mult și folosește formatul. Urmează un cod care nu este verificat, deci e rândul tău... :)

<form action="" method="post"  enctype="multipart/form-data">
  <label for="first-name-text">Prenume: </label><input type="text" id="first-name-text" name="firstNametxt" value="" /><br/>
  <label for="last-name-text">Nume: </label><input type="text" id="last-name-text" name="lastNametxt" value="" /><br/>
  <label for="email">Email: </label><input type="text" id="email" name="email" value="" /><br/>
  <label for="query">Întrebare: </label><input type="text" id="query" name="query" value="" /><br/>
  <input name="Submit" type="submit" value="Trimite">
</form>
<?php
if( isset($_POST['submit']) ) {

  //preluăm valorile postate din formular
  $firstName = $_POST["firstNametxt"];
  $lastName = $_POST["lastNametxt"];
  $email = $_POST["email"];
  $query = $_POST["query"];

  //interacționăm cu baza de date în stil WordPress
  global $wpdb;
  $contactus_table = $wpdb->prefix."contactus";
  $wpdb->insert( 
    $contactus_table, 
    array( 
        'firstname' => $firstName, 
        'lastname'  => $lastName,
        'email'     => $email,
        'query'     => $query,
        'reg_date'  => current_time( 'mysql' ) // http://codex.wordpress.org/Function_Reference/current_time
    ), 
    array( 
      '%s', //tipul de date este string
      '%s',
      '%s',
      '%s',
      '%s' 
    ) 
  );
}
?>
4 dec. 2014 09:33:31
Comentarii

Nu se adaugă frate... :(

lost_in_magento lost_in_magento
4 dec. 2014 09:46:37

http://i59.tinypic.com/315iexu.jpg Apasă pe acest link frate, asta e structura bazei de date

lost_in_magento lost_in_magento
4 dec. 2014 09:55:45