2011-06-24 15 views
-2

を入力するまで、私はPHPを使用してHTMLフォームを送信していると私は私の形でこれらのフィールドを持って提出していない:PHPフォームのすべての情報は

  • 名:(varchar型)
  • 住所:(varchar型)
  • FAX:(int型)
  • PHONE:(int型)
  • EMAIL:(varchar型)
  • プラス独自に追加されますプライマリID。

これで、FAXフィールドに入るまで私のフォームは送信されません。誰がなぜそれが起こっているのか知っていますか?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 

<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> 

<body> 

<?php 

require_once('../../public_html/input.php'); 

require_once('../../public_html/nauth.php'); 

require_once('../../public_html/mysql.php'); 



if (isset($_GET['more'])) 

{ 

    $more = $_GET['more']; 

    $new = 8; 

} 

if (isset($_POST['submit'])) 

{ 

    $more = 4; 

    $new = 8; 

    $name = $_SESSION['username']; 

    $dbc = mysqli_connect(cname, chost, cpwd, cdb); 

    $com_name = mysqli_real_escape_string($dbc, trim($_POST['com_name'])); 

    $com_address = mysqli_real_escape_string($dbc, trim($_POST['com_address'])); 

    $com_phone = mysqli_real_escape_string($dbc, trim($_POST['com_phone'])); 

    $com_fax = mysqli_real_escape_string($dbc, trim($_POST['com_fax'])); 

    $source_id = $_POST['source']; 



    $com_email = mysqli_real_escape_string($dbc, trim($_POST['com_email'])); 

    $entered_by = $name; 

    $query = "select * from company_customers where name='$com_name'"; 

    $data = mysqli_query($dbc, $query); 



    if (mysqli_num_rows($data) == 0) //to check if the name already exists 

    { 

     $query="insert into company_customers(name,address,phone,fax,email,entered_by,source_id) values('$com_name','$com_address','$com_phone','$com_fax','$com_email','$entered_by','$source_id')"; 

     mysqli_query($dbc, $query); 

     $query = "select * from company_customers where name='$com_name'"; 

     $data = mysqli_query($dbc, $query); 

     $row = mysqli_fetch_array($data); 

     $id = $row['id']; //to add the company id in the contacts table 

     $i = 0; 

     while (!empty($_POST['name' . $i])) 

     { 

      $name = $_POST['name' . $i]; 

      $designation = $_POST['desig' . $i]; 

      $phone = $_POST['phone' . $i]; 

      $query = "insert into contacts(name,designation,id,phone) values('$name','$designation','$id','$phone')"; 

      mysqli_query($dbc, $query); 

      $i++; 

     } 

     mysqli_close($dbc); 

     echo 'Added'; 

     require_once('option.php'); 

     exit(); 

    } 

    else echo 'company already entered'; 

} 

else if (isset($_POST['more'])) 

{ 

    $more = $_POST['count']; 

    $new = $more + 4; 

} 

?> 

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST"> 

<fieldset><legend>Company Profile</legend> 

<label for="com_name">Company Name:</label><input type="text" name="com_name" value="<?php if(isset($_POST['more'])) echo $_POST['com_name']; ?>"/><br /> 

<label for="com_address">Company Address:</label><input type="text" name="com_address"  value="<?php if(isset($_POST['more'])) echo $_POST['com_address']; ?>" /><br /> 

<label for="com_phone">Company Phone:</label><input type="text" name="com_phone" value="<?php if(isset($_POST['more'])) echo $_POST['com_phone']; ?>" /><br /> 

<label for="com_fax">Company Fax:</label><input type="text" name="com_fax" value="<?php if(isset($_POST['more'])) echo $_POST['com_fax']; ?>" /><br /> 

<label for="com_email">Company Email:</label><input type="text" name="com_email" value="<?php if(isset($_POST['more'])) echo $_POST['email']; ?>" /><br /> 

<?php 

$dbc = mysqli_connect(cname, chost, cpwd, cdb); 

$query = "select * from source"; 

$data = mysqli_query($dbc, $query); 

$number_row = mysqli_num_rows($data); 

$source[0] = ''; 

$source_id[0] = ''; 

$i = 1; 

while ($row = mysqli_fetch_array($data)) 

{ 

    $source[$i] = $row['src']; 

    $source_id[$i] = $row['source_id']; 

    $i++; 

} 

echo '<label for="source">Source</label><select name="source">'; 

for ($i = 0; $i <= $number_row; $i++) 

    echo '<option value="' . $source_id[$i] . '">' . $source[$i] . '</option>'; 

echo '</select>'; 

?> 

</fieldset> 

<fieldset><legend>Company Contact</legend> 

<?php 

for ($i = 0; $i < $more; $i++) 

{ 

?> 

<label for="<?php echo 'name' . $i; ?>">Name:</label><input type="text" name="<?php echo 'name' . $i; ?>" value="<?php if (isset($_POST['more'])) echo $_POST['name' . $i]; ?>" /> 

<label for="<?php echo 'desig' . $i; ?>">Designation:</label><input type="text" name="<?php echo 'desig' . $i; ?>" value="<?php if (isset($_POST['more'])) echo $_POST['desig' . $i];?>" /> 

<label for="<?php echo 'phone' . $i;?>">Phone:</label><input type="text" name="<?php echo 'phone' . $i;?>" value="<?php if (isset($_POST['more'])) echo $_POST['phone' . $i]; ?>" /><br /> 

<?php 

} 

?> 

<input type="hidden" name="count" value="<?php echo $new; ?>" /> 

<input type="submit" name="more" value="more" /> 

</fieldset> 

<input type="submit" name="submit" value="ADD" /> 

</form> 

</body> 

</html> 
+0

フォームのHTMLバージョンと、送信を処理するPHP関数を投稿できますか? – smcphill

+1

nope。いくつかのコードがない限り、私たちは何もしません。あなたはそれに(クライアント側/ JS)検証を含むいくつかのコードをコピー/貼り付けましたか? – thescientist

+0

答えを知るためのコードを表示 – Kumar

答えて

1

mysqlのnullの値を許可するように列を設定してみてください。例えば。

ALTER TABLE company_customers CHANGE fax fax INT(11) NULL 
+0

naa..not working! – Kraken

+1

@カラン、この種の問題を排除するために列情報を投稿することができます。 'company_customersから列を表示する –

関連する問題