2016-02-25 3 views
0

Некоторые из кода этой проблемы могут быть длинными, поэтому я постараюсь определить, где я думаю, что проблема кроется. Единственная проблема, с которой я сталкиваюсь, - я не уверен, как определить, где код не работает. Все, что у меня есть, это либо он загружается, либо нет. Сейчас он просто не загружается без какой-либо причины.Попытка вставить форму PHP в SQL

Сначала я покажу свой код формы:

function show_form($messages) {   


     // Assign post values if exist 
     $username=""; 
     $password=""; 
     $firstname=""; 
     $lastname=""; 
     $address=""; 
     $city=""; 
     $state=""; 
     $zip=""; 
     $phone=""; 
     $card_number=""; 
     $expire=""; 
     $code=""; 
     $product_name=""; 
     if (isset($_POST["username"])) 
      $username=$_POST["username"]; 
     if (isset($_POST["password"])) 
      $password=$_POST["password"]; 
     if (isset($_POST["firstname"])) 
      $firstname=$_POST["firstname"]; 
     if (isset($_POST["lastname"])) 
      $lastname=$_POST["lastname"]; 
     if (isset($_POST["address"])) 
      $address=$_POST["address"];  
     if (isset($_POST["city"])) 
      $city=$_POST["city"]; 
     if (isset($_POST["state"])) 
      $state=$_POST["state"]; 
     if (isset($_POST["zip"])) 
      $zip=$_POST["zip"];  
     if (isset($_POST["phone"])) 
      $phone=$_POST["phone"]; 
     if (isset($_POST["card_number"])) 
      $card_number=$_POST["card_number"]; 
     if (isset($_POST["expire"])) 
      $expire=$_POST["expire"]; 
     if (isset($_POST["code"])) 
      $code=$_POST["code"]; 
     if (isset($_POST["product_name"])) 
      $product_name=$_POST["product_name"]; 

    echo "<p></p>"; 
    echo "<h2> Enter New Customers Data</h2>"; 
    echo "<p></p>";  
    ?> 
    <h5>Complete the information in the form below and click Submit to create your account. All fields are required.</h5> 
    <form name="createstudent" method="POST" action="InsertApp.php">  

    Username:<br> 
    <input type="text" name="username" value=""><br> 
    Last name:<br> 
    <input type="text" name="password" value=""><br> 
    Street Address:<br> 
    <input type="text" name="address" value=""><br> 
    First name:<br> 
    <input type="text" name="firstname" value=""><br> 
    Last name:<br> 
    <input type="text" name="lastname" value=""><br> 
    Street Address:<br> 
    <input type="text" name="address" value=""><br> 
    City:<br> 
    <input type="text" name="city" value=""><br> 
    <br> 
    <select name="state" size="1"> 
    <option value="AK">AK</option> 
    <option value="AL">AL</option> 
    <option value="AR">AR</option> 
    <option value="AZ">AZ</option> 
<option value="WV">WV</option> 
    <option value="WY">WY</option> 
    </select> 
    <br> 
    <br> 
    Zipcode:<br> 
    <input type="text" name="zip" value=""><br><br> 
    <input type="radio" name="credit_card" value="visa" checked> Visa<br> 
    <input type="radio" name="credit_card" value="master"> MasterCard<br> 
    <input type="radio" name="credit_card" value="american"> American Express<br> 
    <input type="radio" name="credit_card" value="discover"> Discover<br> 
    <input type="radio" name="credit_card" value="paypal"> Pay Pal<br><br> 
    Phone Number:<br> 
    <input type="text" name="phone" valur""><br> 
    Credit Card Number:<br> 
    <input type="text" name="card_number" value=""><br> 
    Expiration Date (Mon/Year):<br> 
    <input type="text" name="expire" value=""><br> 
    Security Code:<br> 
    <input type="text" name="code" value=""><br><br> 
    <input type="submit" value="Submit">   
    </form> 

Я никогда не имел проблем с вышеуказанным кодом я просто снабдив его, чтобы показать вам, что я работаю с. Затем я покажу вам некоторые из кода, который я добавил, который позже дал мне проблемы. Я знаю, что должен был сделать немного понемногу, но я это испортил.

<?php 
function validate_form() 
{ 

    $messages = array(); 
    $redisplay = false; 
    // Assign values 
    $username = $_POST["username"]; 
    $password = $_POST["password"]; 
    $firstname = $_POST["firstname"]; 
    $lastname = $_POST["lastname"]; 
    $address = $_POST["address"]; 
    $city = $_POST["state"]; 
    $state = $_POST["state"]; 
    $zip = $_POST["zip"]; 
    $phone = $_POST["phone"]; 
    $card_number = $_POST["card_number"]; 
    $expire = $_POST["expire"]; 
    $code = $_POST["code"]; 
    $product_name = $_POST["product_name"]; 

    $customer = new CustomerClass($username,$password,$firstname,$lastname,$address,$city,$state,$zip,$phone,$card_number,$expire,$code,$product_name); 
    $count = countCostumer($customer);   


    // Check for accounts that already exist and Do insert 
    if ($count==0) 
    {  
     $res = insertCustomer($customer); 
     echo "<h3>Thank you for shopping with us!</h3> ";   
    } 
    else 
    { 
     echo "<h3>A customer account with that username already exists.</h3> ";   
    } 
    } 

function countCustomer ($customer) 
    {   
    // Connect to the database 
    $mysqli = connectdb(); 
    $firstname = $customer->getFirstname(); 
    $lastname = $customer->getLastname(); 
    $username = $->getUsername(); 


     // Connect to the database 
    $mysqli = connectdb(); 

    // Define the Query 
    // For Windows MYSQL String is case insensitive 
    $Myquery = "SELECT count(*) as count from Customer 
      where username='$username'"; 

    if ($result = $mysqli->query($Myquery)) 
    { 
     /* Fetch the results of the query */   
     while($row = $result->fetch_assoc()) 
     { 
      $count=$row["count"];           
     }  

     /* Destroy the result set and free the memory used for it */ 
     $result->close();   
    } 

    $mysqli->close(); 

    return $count; 

    } 

    function insertCustomer ($customer) 
    { 

     // Connect to the database 
    $mysqli = connectdb(); 


    $firstname = $customer->getFirstname(); 
    $lastname = $customer->getLastname(); 
    $username = $->getUsername(); 

     // Add Prepared Statement 
     $Query = "INSERT INTO Customer 
      (username,password,firstName,lastName,address,city,state,zip,phone,card_number,expire,code,product_name) 
       VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?)"; 


     $stmt = $mysqli->prepare($Query); 

$stmt->bind_param("sssssssiiiiis", $username, $password, $firstname, $lastname, $city, $state, $zip, $phone, $card_number, $expire, $code, $product_name); 
$stmt->execute(); 



    $stmt->close(); 
    $mysqli->close(); 

     return true; 
    } 

Я знаю, что это много кода, чтобы поместить туда на помощь, но у меня нет никакого способа, чтобы найти способ точно определить ошибку. Если кто-нибудь знает где-нибудь, я могу поместить этот код, который будет отображать ошибки, которые могут помочь. Я пробовал использовать W3C Validation. Однако он сказал мне, что я не могу использовать его в непубличных доменах.

Вот еще немного кода:

class StudentClass 
{ 
    // property declaration 
    private $username=""; 
    private $password=""; 
    private $firstname=""; 
    private $lastname=""; 
    private $address=""; 
    private $city=""; 
    private $state=""; 
    private $zip=""; 
    private $phone=""; 
    private $card_number=""; 
    private $expire=""; 
    private $code=""; 
    private $product_name=""; 


    // Constructor 
    public function __construct($username,$password,$firstname,$lastname,$address,$city,$state,$zip,$phone,$card_number,$expire,$code,$product_name) 
    { 
     $this->username = $username; 
     $this->password = $password; 
     $this->firstname = $firstname; 
     $this->lastname = $lastname; 
     $this->address = $address; 
     $this->city = $city; 
     $this->state = $state; 
     $this->zip = $zip; 
     $this->phone = $phone; 
     $this->card_number = $card_number; 
     $this->expire = $expire; 
     $this->code = $code; 
     $this->product_name = $product_name; 

    } 

    // Get methods 
     public function getUsername() 
    { 
     return $this->username; 
    } 
     public function getPassword() 
    { 
     return $this->password; 
    } 
     public function getFirstname() 
    { 
     return $this->firstname; 
    } 
     public function getLastname() 
    { 
     return $this->lastname; 
    } 
     public function getAddress() 
    { 
     return $this->address; 
    } 
     public function getCity() 
    { 
     return $this->city; 
    } 
     public function getState() 
    { 
     return $this->state; 
    } 
     public function getZip() 
    { 
     return $this->zip; 
    } 
     public function getPhone() 
    { 
     return $this->phone; 
    } 
     public function getCardNumber() 
    { 
     return $this->card_number; 
    } 
     public function getExpire() 
    { 
     return $this->expire; 
    } 
     public function getCode() 
    { 
     return $this->code; 
    } 
     public function getProductName() 
    { 
     return $this->product_name; 
    } 


    // Set methods 
    public function setusername ($value) 
    { 
     $this->username = $value;  
    } 
    public function setPassword ($value) 
    { 
     $this->password = $value;  
    } 
    public function setFirstname ($value) 
    { 
     $this->firstname = $value;  
    } 
    public function setLastname ($value) 
    { 
     $this->lastname = $value;  
    } 
    public function setAddress ($value) 
    { 
     $this->address = $value;   
    } 
    public function setCity ($value) 
    { 
     $this->city = $value;  
    }  
    public function setState ($value) 
    { 
     $this->state = $value;  
    } 
    public function setZip ($value) 
    { 
     $this->zip = $value;   
    } 
    public function setPhone ($value) 
    { 
     $this->phone = $value;  
    } 
    public function setCardNumber ($value) 
    { 
     $this->card_number = $value;   
    } 
    public function setExpire ($value) 
    { 
     $this->Expire = $value;  
    } 
    public function setCode ($value) 
    { 
     $this->code = $value;  
    } 
    public function setProductName ($value) 
    { 
     $this->product_name = $value;  
    } 
} // End Studentclass 

?> 

Любая помощь или проницательность была бы оценена. Благодаря

+0

У вас есть сообщение об ошибке, включенное для вашего кода PHP? – Maximus2012

+0

Как это сделать? –

+0

http://stackoverflow.com/questions/6575482/how-do-i-enable-error-reporting-in-php – Maximus2012

ответ

1

Пара вещей, чтобы устранять неполадки первыми:

Если вы хотите, чтобы включить error_reporting, что это самый простой способ, чтобы определить, если у вас есть ошибка синтаксиса вы можете найти информацию о том here.

Во второй аннотации текста у вас есть два случая, когда вы, кажется, отсутствует слово customer и вместо этого ввели $->getUsername() и в третьей аннотации, это может быть просто копировальный ляп, но не ведущий <?php тег.

Если вам не нужна установка IDE или синтаксиса, вы всегда можете запустить php -l из командной строки или запустить файл php_check_syntax в файле. Просто пища для размышлений.

+0

Ошибка PHP-анализа: синтаксическая ошибка, неожиданный '->' (T_OBJECT_OPERATOR), ожидающая переменная (T_VARIABLE) или '$' в /home/umucsdev/Public/InsertApp.php в строке 208 была ошибка, которую я получил от запуска этой командной строки. Казалось, что он был оргетингом, откуда был $ -> getUsername(), и я его исправил, но когда я снова запустил его, он все равно дал мне ту же ошибку. –

+0

Был ли он на другой линии во второй раз. Потому что есть два примера того же самого. – Iwnnay

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