Vì vậy, tôi có kịch bản đăng ký này:Làm thế nào để chèn dữ liệu mẫu vào bảng cơ sở dữ liệu MySQL
HTML:
<form action="register.php" method="POST">
<label>Username:</label> <input type="text" name="username" /><br />
<label>Password:</label> <input type="text" name="password" /><br />
<label>Gender:</label>
<select name="gender">
<optgroup label="genderset">
<option value="Male">Male</option>
<option value="Female">Female</option>
<option value="Hermaphrodite">Hermaphrodite</option>
<option value="Not Sure!!!">Not Sure!!!</option>
</optgroup>
</select><br />
<input type="submit" value="Register" />
</form>
Các PHP/SQL:
<?php
$username = $_POST['username'];
$password = $_POST['password'];
$gender = $_POST['gender'];
mysql_query("INSERT INTO registration_info (username, password, gender) VALUES ('$username', '$password', '$gender')
")
?>
Vấn đề là, tên người dùng và mật khẩu được chèn vào bảng "registration_info" tốt. Nhưng đầu vào Giới tính từ trình đơn thả xuống chọn không. Một số có thể cho tôi biết làm thế nào để sửa lỗi này, cảm ơn.
Không bao giờ, bao giờ, bao giờ đặt thông số biểu mẫu vào truy vấn như vậy. Hãy thử các tham số Bind (http://uk.php.net/manual/en/mysqli.prepare.php) thay vì –
Vâng, tôi biết điều này không an toàn chút nào, tôi chỉ thực hành cơ bản, tập lệnh này sẽ không bao giờ trên dòng :) – Richard
Bạn có thể muốn làm một print_r ($ _ POST) và xem cách dữ liệu đến trong kịch bản của bạn, sẽ làm cho nó dễ dàng để gỡ lỗi. – Erik