Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Регистрация пользователя
 
 автор: Selina   (24.10.2005 в 19:55)   письмо автору
 
 

Здраствуйте!

Вот уже которй день мучаюсь, но никак не получается регистрация пользователей :(
помогите, пожалуйста.
БД

CREATE TABLE 'probadb' (
'id_user' INT NOT NULL AUTO_INCREMENT ,
'Nickname' TINYINT NOT NULL ,
'Passwort' TINYINT NOT NULL ,
PRIMARY KEY ( 'id_user' ) 
);



ОБработчик

<?php 

  
// Устанавливаем соединение с базой данных 

  
include "config.php"

  
// Формируем запрос на добавления данных из поля 
  // name HTML-формы. Так как методо передачи данных 
  // POST, содержимое текстовой области находится 
  // в $_POST['name'] 

  
$query "INSERT INTO probadb 
            VALUES ('"
.$_POST['Nickname']."','".$_POST['Passwort']."')"

  
// Выполняем запрос и контролируем правильность его выполнения 

  
if(mysql_query($query)) 
  { 
     echo 
"Данные успешно добавлены"
  } 
  else 
  { 
    echo 
"Ошибка - ".mysql_error(); 
  } 
?> 


Config file

<?     
$dbuser 
="root";                        // Ваш login 
$dbpasswd="";                             // Ваш password
$dbname="probadb";                        // Название базы данных
$dblocation="localhost";                        // Ваш хост, обычно localhost

 
$dbcnx = @mysql_connect($dblocation,$dbuser,$dbpasswd); 
  if (!
$dbcnx
  { 
    echo( 
"<P>В настоящий момент сервер базы данных не доступен, поэтому корректное 
                       отображение страницы невозможно.</P>" 
); 
    exit(); 
  } 
  
// Выбираем базу данных - этой функцией мы сообщаем с какой 
  // базой данных мы будем работать, заметте, что вторым 
  // параметром мы передаем дискриптор соединения $dbcnx, 
  // который вернула функция mysql_connect 
  
if (! @mysql_select_db($dbname,$dbcnx) ) 
  { 
    echo( 
"<P>В настоящий момент база данных не доступна, поэтому корректное 
                       отображение страницы невозможно.</P>" 
); 
    exit(); 
  }             
?>


Сама форма написана на HTLM совсем простенькая, нужно только Ник ввести и пороль и нажать кнопку "Зарегистрировать"

   
 
 автор: cheops   (24.10.2005 в 20:33)   письмо автору
 
   для: Selina   (24.10.2005 в 19:55)
 

А в чём заключается проблема?

PS Вопросы, посвящённые MySQL, лучше сразу размещать в форуме MySQL

   
 
 автор: Selina   (24.10.2005 в 20:44)   письмо автору
 
   для: cheops   (24.10.2005 в 20:33)
 

проблема в том, что никак не хочет записываться в БД информация... где то закралась ошибка, я думаю, что в config.php потому что выводится на экран:

"В настоящий момент база данных не доступна, поэтому корректное отображение страницы невозможно"

   
 
 автор: cheops   (24.10.2005 в 21:10)   письмо автору
 
   для: Selina   (24.10.2005 в 20:44)
 

Уберите все знаки @ из конфигурационного файла - что ещё начинает писать в браузер?

   
 
 автор: Selina   (24.10.2005 в 21:41)   письмо автору
 
   для: cheops   (24.10.2005 в 21:10)
 

убрала, все равно ошибка такая же...

   
 
 автор: EvgenLog   (24.10.2005 в 22:51)   письмо автору
 
   для: Selina   (24.10.2005 в 21:41)
 

Перепишите эту часть кода:

<?
...
echo( 
"<P>В настоящий момент база данных не доступна, поэтому корректное 
                       отображение страницы невозможно.</P>" 
); 
...
?>

Вот так:

<?
...
echo( 
"mysql_error()" ); 
...
?>

Что сейчас пишется в браузере?

Также проверьте создана ли база с таким именем и права доступа к ней...

   
 
 автор: Selina   (24.10.2005 в 23:08)   письмо автору
 
   для: EvgenLog   (24.10.2005 в 22:51)
 

выдает на экране

mysql_error()

База есть на компе, лежит в этой же дериктории что и остальные файлы.

   
 
 автор: EvgenLog   (24.10.2005 в 23:13)   письмо автору
 
   для: Selina   (24.10.2005 в 23:08)
 

Ой! После mysql_error() надо поставить ";"
Вот так написать

echo "mysql_error();";

   
 
 автор: Selina   (25.10.2005 в 00:07)   письмо автору
 
   для: EvgenLog   (24.10.2005 в 23:13)
 

дааааа, ребята, сколько я дней мучилась!!! вы бы знали!!! и все из-за незнания phpMyAdmin... :( с прежней ошибкой покончено... теперь другая выдается. но это хоть уже какой то шаг! Спасибо дорогие мои!

   
 
 автор: hatsker   (25.10.2005 в 04:25)   письмо автору
 
   для: Selina   (25.10.2005 в 00:07)
 

У вас данные даються как интеджер а вы наверное пытаетесь записать туда и буквы...Тогда вы толжны указать в певрой части...Где вы указываете типы полей в таблице...TinyText...или просто Text...А код у вас в порядке.

   
 
 автор: Selina   (27.10.2005 в 13:20)   письмо автору
 
   для: hatsker   (25.10.2005 в 04:25)
 

Так оно и было! Спасибо, что помогаете таким чаникам как я :)

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования