2015-04-07 45 views
0

如何讓文本區域發佈到我的數組然後存儲在MySQL數據庫中。除了「textarea」部分外,表單中的每個元素都有效這裏是我的代碼...任何幫助表示感謝!謝謝!!從textarea發送數據到mysql

<form action="" method="post"> 
    <ul> 
     <li> 
      First name*:<br> 
      <input type="text" class="standard" name="first_name" value="<?php echo $user_data['first_name']; ?>"> 
     </li> 
     <li> 
      Last name:<br> 
      <input class="standard" type="text" name="last_name" value="<?php echo $user_data['last_name']; ?>"> 
     </li> 
     <li> 
      Email*:<br> 
      <input class="standard" type="text" name="email" value="<?php echo $user_data['email']; ?>"> 
     </li> 
     <li> 
      Phone Number:<br> 
      <input class="standard" type="text" name="phone" value="<?php echo $user_data['phone']; ?>"> 
     </li> 
     <li> 
      About Me:<br> 
      <textarea id="textarea" maxlength="1000" name="summary" value="<?php echo $user_data['summary']; ?>"></textarea> 
      <div id="textarea_feedback"></div> 
     </li> 
     <li> 
      Account type:<br> 
      <select name="type"> 
       <option value="0" <?php if ($user_data['type'] == 0) echo "selected"; ?>>Employee</option> 
       <option value="1" <?php if ($user_data['type'] == 1) echo "selected"; ?>>Employer</option> 
      </select> 
     </li> 
     <li> 
      <input type="submit" value="Update"> 
     </li> 
    </ul> 
</form> 

所以「關於我」textarea不起作用。

這裏是PHP把它發送到數據庫:

<?php 
if (isset($_GET['success']) === true && empty($_GET['success']) === true) { 
echo 'Your details have been updated!'; 
} else { 
if (empty($_POST) === false && empty($errors) === true) { 

    $update_data = array(
     'first_name' => $_POST['first_name'], 
     'last_name'  => $_POST['last_name'], 
     'email'   => $_POST['email'], 
     'type'   => $_POST['type'], 
     'phone'   => $_POST['phone'], 
     'summary'  => $_POST['summary'] 
    ); 

    update_user($session_user_id, $update_data); 
    header('Location: settings.php?success'); 
    exit(); 

} else if (empty($errors) === false) { 
    echo output_errors($errors); 
} 
?> 

這裏是發送到數據庫的功能。

function user_data($user_id) { 
$data = array(); 
$user_id = (int)$user_id; 

$func_num_args = func_num_args(); 
$func_get_args = func_get_args(); 

if ($func_num_args > 1) { 
    unset($func_get_args[0]); 

    $fields = '`' . implode('`, `', $func_get_args) . '`'; 
    $data = mysql_fetch_assoc(mysql_query("SELECT * FROM `users` WHERE `user_id` LIKE $user_id")); 

    return $data; 
} 
} 
+1

文字區域不使用'value'屬性,而不是值標籤的內容。 –

+0

我沒有看到任何SQL來支持這個問題。 –

+0

另外,一個編輯被做成了'form action =「」method =「post」>'''form action =「」method =「post」>' - 所以,如果這就是您實際使用的內容,那麼這就是問題。 –

回答

1

更改該行:

<textarea id="textarea" maxlength="1000" name="summary" ><?php echo $user_data['summary']; ?></textarea> 
+0

工作過,謝謝:) – b0bbie

1

似乎在您的textarea的名稱屬性有一個錯字。您寫了名稱 - 「摘要」而不是名稱=「摘要」。

+0

編輯代碼的函數的代碼。謝謝。雖然仍然沒有運氣! – b0bbie