2017-02-01 5 views
0

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

<!doctype html> 
<html> 
<head> 
    <meta charset="utf-8"> 
    <meta name="viewport" content="initial-scale=1, maximum-scale=1"> 
    <title>Create a Company</title> 
    <link rel="stylesheet" type="text/css" href="/css.css"/> 

</head> 
<body> 
    <h2 class="header"> Create a Company </h2> 
    <form action="processcompany.php" method="post"> 
     <input class="entry" placeholder="Account No" name="accountno" type="text"><br> 
     <input class="entry" placeholder="Company Name" name="companyname" type="text" required="required"><br> 
     <input class="entry" placeholder="GST/VAT/ABN/TAX No" name="taxno" type="text" required="required"><br> 
     <input class="entry" placeholder="Address Line 1" name="address1" type="text" value=""><br> 
     <input class="entry" placeholder="Address Line 2" name="address2" type="text" value=""><br> 
     <input class="entry" placeholder="Suburb/County" name="suburb" type="text" value=""><br> 
     <input class="entry" placeholder="State" name="state" type="text" value=""><br> 
     <input class="entry" placeholder="Post/Zip Code" name="postcode" type="text" value=""><br> 
     <input class="entry" placeholder="Country" name="country" type="text" value=""><br> 
     <input class="entry" placeholder="Primary Contact" name="primarycontact" type="text" value=""><br> 
     <input class="entry" placeholder="Primary Email" name="primaryemail" type="text" value=""><br> 
     <input class="entry" placeholder="Subscription Type" name="subscriptiontype" type="text" value=""><br> 
     <input class="entry" placeholder="Subscription Status" name="subscriptionstatus" type="hidden" value="Active"><br> 
     <input class="entry" placeholder="Subscription End Date" name="subscriptionenddate" type="text" value=""><br><br><br> 



     <input class="entry" placeholder="login Email Address" name="loginname" type="text" value=""><br> 
     <input class="entry" placeholder="First and Last Name" name="counttypename" type="text" value=""><br> 
     <input class="entry" placeholder="User Type" name="usertype" type="hidden" value="Company Administrator"><br> 
     <input class="entry" placeholder="User Status" name="status" type="hidden" value="Active"><br> 
     <input class="entry" placeholder="Password" name="password" type="text" value=""><br> 
     <input class="button" type="submit"> 

    </form> 
</body> 
</html> 

это мой файл сценария

<?php 
include 'db.php'; 

$sql = "INSERT INTO `companies` 
      (`accountno`, `companyname` , 
      `taxno` , `address1`, `address2`, `suburb` , 
      `state` , `postcode`, `country`, `primarycontact` , 
      `primaryemail`, `subscriptiontype` , 
      `subscriptionstatus`, `subscriptionenddate`,  
      `datecreated`) 
    VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,NOW())"; 

$stmt = $conn->prepare($sql); 
if (! $stmt) { 
echo $stmt->error; 
exit; 
} 

$stmt->bind_param('isssssssssssss', 
       $_POST['accountno'], 
       $_POST['companyname'], 
       $_POST['taxno'], 
       $_POST['address1'], 
       $_POST['address2'], 
       $_POST['suburb'], 
       $_POST['state'], 
       $_POST['postcode'], 
       $_POST['country'], 
       $_POST['primarycontact'], 
       $_POST['primaryemail'], 
       $_POST['subscriptiontype'], 
       $_POST['subscriptionstatus'], 
       $_POST['subscriptionenddate'] 
      ); 

$stmt->execute(); 
if (! $stmt) { 
echo $stmt->error; 
exit; 
}  

$sqla = "INSERT INTO `users` 
      (`accountno`, `loginname` , 
      `password` , `countteamname`, `status`, `usertype` , 
      `datecreated`) 
    VALUES (?,?,?,?,?,?,NOW())"; 

$stmta = $conn->prepare($sqla); 
if (! $stmta) { 
echo $stmta->error; 
exit; 
} 

$stmta->bind_param('isssss', 
       $_POST['accountno'], 
       $_POST['loginname'], 
       $_POST['password'], 
       $_POST['countteamname'], 
       $_POST['status'], 
       $_POST['usertype'] 
      ); 

$stmta->execute(); 
if (! $stmta) { 
echo $stmta->error; 
exit; 
} 

mysqli_close($conn); 

header('location: admin.php'); 

?> 

мои ценности дб

userid, accountno, loginname, password, countteamname, status, counttype, piid, datecreated 

counttype и piid не добавляются в этот момент к столу. userid - это номер автоинкремента mysql.

Как только я загружу это, я буду работать над обеспечением пароля с помощью хэша.

Я пытался выяснить это самостоятельно сам по себе. Я надеюсь, что вы можете помочь.

+0

Я не вижу ввода с 'countteamname' ->' $ _POST ['countteamname'] '. Я вижу 'имя =" counttypename "'. Это одно и то же? Может ли ваша вставка быть сбой из-за значения «null» для 'countteamname' /' $ _POST ['countteamname'] ' – Sean

+0

@Sean Спасибо, Шон. Это была проблема. Он добавляет в db сейчас. – Raggs

ответ

0

Взглядами него ваш только добавляя к одной таблице с запросом

насчет конкатенации двух запросов

$ SQL = «QUERY;»;

$ sql. = "QUERY;";

использовать. = Для объединения обоих запросов.

+0

Несколько запросов требуют ['mysqli :: multi_query'] (http://php.net/manual/en/mysqli.multi-query.php), поскольку текущие методы разрешают только один запрос на выполнение – Sean

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