- Volgens je oorspronkelijk geplaatste vraag die is bewerkt:
Ten eerste gebruik je een koppelteken voor je sex-select
kolom.
MySQL denkt dat je een wiskundige vergelijking wilt maken die zich vertaalt naar:
geslacht (min) selecteren.
Wikkel het in backticks en mis de kolom voor photo
(fname, lname, email, pass, phone, photo, `sex-select`, month,day,year)
^^^^^^ missing column
met mysql_error()
met mysql_query()
zou de fout hebben aangegeven.
Ook $sex-select
dat moet $sex_select
. zijn gebruik ook geen koppeltekens voor variabelen.
Dus verander al die instanties in $sex_select
ook in uw WAARDEN.
('$fname', '$lname', '$email', '$pass', '$phone', '$photo', '$sex_select', '$month','$day','$year')
Ik heb gemerkt dat zowel je DB als je tabel crop
heten .
$mysql_database = "crop";
en
mysql_query("INSERT INTO crop...
Een daarvan kan onjuist zijn. Zorg ervoor dat de DB-naam is wat deze zou moeten zijn, samen met de tabel. Dat lijkt me gewoon niet goed, maar ik kan het mis hebben. Alleen jij weet hoe ze heten.
Plus mysql_close($con);
dit moet mysql_close($bd);
. zijn
aangezien je $bd = mysql_connect
. gebruikt
Voeg foutrapportage toe naar de bovenkant van uw bestand(en), wat helpt bij het testen van de productie.
error_reporting(E_ALL);
ini_set('display_errors', 1);
wat zou hebben aangegeven dat de fout ook, wat iets is dat u niet doet, op fouten controleert. Dit is belangrijk tijdens de ontwikkeling.
BEWERKEN: voor het controleren van fouten in de DB-verbinding:
In plaats van:
$mysql_hostname = "localhost";
$mysql_user = "root";
$mysql_password = "";
$mysql_database = "crop";
$prefix = "";
$bd = mysql_connect($mysql_hostname, $mysql_user, $mysql_password) or die("Could not connect database");
mysql_select_db($mysql_database, $bd) or die("Could not select database");
Gebruik het volgende om eventuele fouten op te sporen, mochten die er zijn. Gebruik die("Could not connect database")
is niet goed genoeg.
Als crop
is niet de database, MySQL zal het je vertellen.
<?php
$bd = mysql_connect('localhost', 'root', '');
if (!$bd) {
die('Not connected : ' . mysql_error());
}
// make foo the current db
$db_selected = mysql_select_db('crop', $bd);
if (!$db_selected) {
die ('Can\'t use foo : ' . mysql_error());
}
Hetzelfde geldt voor uw vraag:
$result = mysql_query("INSERT INTO crop(fname, lname, email, pass, phone, photo, `sex-select`, month,day,year)
VALUES ('$fname', '$lname', '$email', '$pass', '$phone', '$photo', '$sex-select', '$month','$day','$year')");
if (!$result) {
die('Invalid query: ' . mysql_error());
}
Plus, volgens uw HTML-formulier:
<select name="sex-select" id="sex-select">
zou moeten zijn
<select name="sex_select" id="sex-select">