Изпращане на информация към база данни

obqvi_in

Registered
Няколко пъти променях имената на "name" и на "id" и в момента не мога изпратя информация към база данни то кода:
PHP:
<html> 
<head> 
<title>Регистрация</title>

<script src="jquery-1.8.2.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#username").blur(function() {
$.post("chekuser.php" , {
username : $("#username").val()
}, function(response) {
$("#userResult").fadeOut("slow");
$("#userResult").html(response);
$("#userResult").fadeIn("slow");
});
});
});

$(document).ready(function() {
$("#email").blur(function() {
$.post("chekemail.php" , {
email : $("#email").val()
}, function(response) {
$("#emailResult").fadeOut("slow");
$("#emailResult").html(response);
$("#emailResult").fadeIn("slow");
});
});
});
</script>		
</head> 
<body> 

<?php

include "config.php";

$connect = mysql_connect($host, $user, $pass);
mysql_select_db($bd, $connect) or die (mysql_error());
mysql_query("SET names cp1251");

if(isset($_POST['reg']))
{
 $username = addslashes($_POST['username']);
 $password = addslashes($_POST['password']);
 $password2 = addslashes($_POST['password2']);
 $email = addslashes($_POST['email']);
}

?>

<form method="post" action=""> 

Име: <input type="text" name="username" id="username" /><span id="userResult"></span><br />

Парола: <input type="password" name="password" /><br />

Отново: <input type="password" name="password2" /><br />

Имейл: <input type="text" name="email" id="email" /><span id="emailResult"></span><br />

<input type="submit" value="Регистрирай се" name="reg" /> 
</form> 
</body> 
</html>
И нещо стана с базата данни на локалния, нали има няколко главни таблици и в тях са подтабилите. Преди няколко месеца кота ползвах база данни и като избирах име таблица беше от подтаблица а сега мога да избирам само от главните или ми пише грешка неоткрита база данни.
Таблицата:
[sql]CREATE TABLE IF NOT EXISTS `users` (
`user_id` int(10) NOT NULL AUTO_INCREMENT,
`username` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
`password` varchar(32) COLLATE utf8_unicode_ci NOT NULL,
`password2` varchar(32) COLLATE utf8_unicode_ci NOT NULL,
`email` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1 ;[/sql][/php]
 
Като ти гледам полето тип varchar(32) предполагам че е за MD5 hash но не съм сигурен.

Ето ти кода който записва паролата в обикновен вид:

PHP:
<html> 
<head> 
<title>Регистрация</title>
<script src="jquery-1.8.2.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#username").blur(function() {
$.post("chekuser.php" , {
username : $("#username").val()
}, function(response) {
$("#userResult").fadeOut("slow");
$("#userResult").html(response);
$("#userResult").fadeIn("slow");
});
});
});

$(document).ready(function() {
$("#email").blur(function() {
$.post("chekemail.php" , {
email : $("#email").val()
}, function(response) {
$("#emailResult").fadeOut("slow");
$("#emailResult").html(response);
$("#emailResult").fadeIn("slow");
});
});
});
</script>               
</head> 
<body> 
<form method="post" action=""> 
Име: <input type="text" name="username" id="username" /><span id="userResult"></span><br />
Парола: <input type="password" name="password" /><br />
Отново: <input type="password" name="password2" /><br />
Имейл: <input type="text" name="email" id="email" /><span id="emailResult"></span><br />
<input type="submit" value="Регистрирай се" name="reg" /> 
</form>
<?php
include "config.php";
$connect = mysql_connect($host, $user, $pass);
mysql_select_db($bd, $connect) or die (mysql_error());
mysql_query("SET names cp1251");
if(isset($_POST['reg']))
{
$username = addslashes($_POST['username']);
$password = addslashes($_POST['password']);
$password2 = addslashes($_POST['password2']);
$email = addslashes($_POST['email']);
if (!empty($username) and !empty($password) and !empty($password2) and !empty($email))
{
if ($password == $password2)
{
$a = mysql_query("SELECT * FROM `users` WHERE `username`='$username'") or die(mysql_error());
$b = mysql_num_rows($a);
if ($b > 0)
{
echo "Потребителското име е заето.";
}
else
{
mysql_query("INSERT INTO `users` (`username`,`password`,`password2`,`email`) VALUES ('$username','$password','$password2','$email')") or die(mysql_error());
echo "Вие се регистрирахте успешно.";
}
}
else
{
echo "Въведените пароли не съвпадат.";
}
}
else
{
echo "Не сте попълнили всички полета.";
}
}
?>
</body> 
</html>

А ето и код, който я записва в MD5 формат.

PHP:
<html> 
<head> 
<title>Регистрация</title>
<script src="jquery-1.8.2.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#username").blur(function() {
$.post("chekuser.php" , {
username : $("#username").val()
}, function(response) {
$("#userResult").fadeOut("slow");
$("#userResult").html(response);
$("#userResult").fadeIn("slow");
});
});
});

$(document).ready(function() {
$("#email").blur(function() {
$.post("chekemail.php" , {
email : $("#email").val()
}, function(response) {
$("#emailResult").fadeOut("slow");
$("#emailResult").html(response);
$("#emailResult").fadeIn("slow");
});
});
});
</script>               
</head> 
<body> 
<form method="post" action=""> 
Име: <input type="text" name="username" id="username" /><span id="userResult"></span><br />
Парола: <input type="password" name="password" /><br />
Отново: <input type="password" name="password2" /><br />
Имейл: <input type="text" name="email" id="email" /><span id="emailResult"></span><br />
<input type="submit" value="Регистрирай се" name="reg" /> 
</form>
<?php
include "config.php";
$connect = mysql_connect($host, $user, $pass);
mysql_select_db($bd, $connect) or die (mysql_error());
mysql_query("SET names cp1251");
if(isset($_POST['reg']))
{
$username = addslashes($_POST['username']);
$password = addslashes($_POST['password']);
$password2 = addslashes($_POST['password2']);
$email = addslashes($_POST['email']);
if (!empty($username) and !empty($password) and !empty($password2) and !empty($email))
{
if ($password == $password2)
{
$a = mysql_query("SELECT * FROM `users` WHERE `username`='$username'") or die(mysql_error());
$b = mysql_num_rows($a);
if ($b > 0)
{
echo "Потребителското име е заето.";
}
else
{
$hash = md5($password);
$hash2 = md5($password2);
mysql_query("INSERT INTO `users` (`username`,`password`,`password2`,`email`) VALUES ('$username','$hash','$hash2','$email')") or die(mysql_error());
echo "Вие се регистрирахте успешно.";
}
}
else
{
echo "Въведените пароли не съвпадат.";
}
}
else
{
echo "Не сте попълнили всички полета.";
}
}
?>
</body> 
</html>

Надявам се да съм те разбрал че искаш точно това де.. ;)

EDIT:
Няма подтаблици.
Структурата е следната:

[1] База данни в която се съдържат таблиците.
[2] Таблици в които се съдържат колоните.
[3] Самите колони (columns) , които в твоят случай са: user_id, username, password, password2, email
 
Напълно си заслужи +1 само ми кажи това за база данните защо не намира подтаблиците а само главните
 
Както казах, няма "подтаблици".
И не знам какво имаш в предвид под това , че не ти ги намира ?
 

Back
Горе