- De acordo com sua pergunta postada originalmente que foi editado:
Em primeiro lugar, você está usando um hífen para sua
sex-select
coluna. O MySQL está pensando que você quer fazer uma equação matemática que se traduz em:
sexo (menos) selecione.
Envolva-o em acentos graves e faltando a coluna para
photo
(fname, lname, email, pass, phone, photo, `sex-select`, month,day,year)
^^^^^^ missing column
tendo usado
mysql_error()
com mysql_query()
teria sinalizado o erro. Também
$sex-select
que precisa ser $sex_select
não use hífens para variáveis também. Portanto, altere todas essas instâncias para
$sex_select
em seus VALORES também. ('$fname', '$lname', '$email', '$pass', '$phone', '$photo', '$sex_select', '$month','$day','$year')
Percebi que seu banco de dados e sua tabela são nomeados
crop
. $mysql_database = "crop";
e
mysql_query("INSERT INTO crop...
Um deles pode estar incorreto. Certifique-se de que o nome do banco de dados seja o que deveria ser, junto com a tabela. Isso não me parece certo, mas posso estar errado. Só você sabe como eles são chamados.
Mais
mysql_close($con);
deve ser mysql_close($bd);
já que você está usando
$bd = mysql_connect
Adicionar relatório de erros no topo do(s) seu(s) arquivo(s), o que ajudará durante o teste de produção.
error_reporting(E_ALL);
ini_set('display_errors', 1);
o que teria sinalizado esse erro também, que é algo que você não está fazendo, é verificar se há erros. Isso é importante durante o desenvolvimento.
EDITAR: para verificação de erros de conexão do banco de dados:
Ao invés de:
$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");
Use o seguinte para detectar quaisquer erros, caso haja algum. Usando
die("Could not connect database")
não é bom o suficiente. Se
crop
não é o banco de dados, o MySQL lhe dirá. <?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());
}
O mesmo para sua consulta:
$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());
}
Além disso, de acordo com seu formulário HTML:
<select name="sex-select" id="sex-select">
deveria estar
<select name="sex_select" id="sex-select">