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

Форум MySQL

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

 

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

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

тема: ООП и mysql
 
 автор: Oligarx   (27.12.2005 в 21:54)   письмо автору
2.4 Кб
 
 

В аттаче два скрипта: index.php и newindex.php. В newindex.php реализовано добавление информации в базу (линейно), а в index.php тоже самое только с помощью Объектно Ориентир. Программирования. newindex.php работает а index.php нет. Никак не могу понять почему.

   
 
 автор: cheops   (27.12.2005 в 22:05)   письмо автору
 
   для: Oligarx   (27.12.2005 в 21:54)
 

А как метод $obj->sql_connect(); узнаёт о параметрах
<?php
$nik  
"jhjhghy";
$mail "lkjhg";
$icq  "eyg";
$comm "uhdg";
?>

их следует передать в качестве параметров, как это сделано в случае функций mysql_connect() в файле newindex.php.

   
 
 автор: Oligarx   (28.12.2005 в 07:54)   письмо автору
 
   для: cheops   (27.12.2005 в 22:05)
 

Всё что можно исправил, но оибка всё равно в том же месте высвечивается. Да и фигурные скобки в файле mysql.class добавил (по синтаксису положено вродебы). Всё исправленое в аттаче ...

   
 
 автор: cheops   (28.12.2005 в 13:20)   письмо автору
 
   для: Oligarx   (28.12.2005 в 07:54)
 

А что-нибудь выводится в окно браузера, как проявляется "не работа"? Проверьте ещё соединение с сервером, исправив метод sql_connect() следующим образом
<?php
   
function sql_connect()
    {
     
$this->conn_id mysql_connect($this->sql_host,$this->sql_login,$this->sql_passwd);
     if(!
$this->conn_id) exit("Нет связи с сервером");
     if(!@
mysql_slect_db($this->sql_tbname,$this->conn_id))
     {
      echo(
"<p>В настоящий момент база данных не доступна, поэтому корректное отображение страницы невозможно.</p>");
     }
    }
?>

   
 
 автор: Oligarx   (28.12.2005 в 16:10)   письмо автору
 
   для: cheops   (28.12.2005 в 13:20)
 

Parse error: parse error, unexpected T_STRING in z:\home\localhost\www\gotevaya\index.php on line 13


Вот код навсякий случай index.php

<? 
require("req/vars.class");
// extract($_REQUEST);
$obj = new class_mysql();

$obj->nik  "jhjhghy";
$obj->mail "lkjhg";
$obj->icq  "eyg";
$obj->comm "uhdg";

$obj->sql_connect();
$obj->sql_query="INSERT INTO mesagi (msg_id,msg_nik,msg_mail,msg_icq,book_comm) VALUES ('','$obj->nik','$obj->mail','$obj->icq','$obj->comm')";
$obj->function sql_execute();

?>

   
 
 автор: cheops   (28.12.2005 в 18:55)   письмо автору
 
   для: Oligarx   (28.12.2005 в 16:10)
 

Следует исправить 13 строку с
<?php
  $obj
->function sql_execute();
?>

на
<?php
  $obj
->sql_execute();
?>

   
 
 автор: Oligarx   (28.12.2005 в 23:01)   письмо автору
 
   для: cheops   (28.12.2005 в 18:55)
 

Всё что было сказано исправил. Теперь ошибок не выдаёт, но всё равно не работает :(( Ума не приложу что ещё сделать чтобы заработало ... . Привожу ещё раз код

<?  
class class_mysql
{

  
  var 
$sql_login    "root";
  var 
$sql_passwd   "";
  var 
$sql_database "gotevaya";
  var 
$sql_tbname   "mesagi";
  var 
$sql_host     "localhost";

  var 
$conn_id;
  var 
$sql_query;
  var 
$sql_err;
  var 
$sql_res;

  var 
$nik;
  var 
$mail;
  var 
$icq;
  var 
$comm;


   function 
sql_connect()
    {
     
$this->conn_id mysql_connect($this->sql_host,$this->sql_login,$this->sql_passwd);
     if(!
$this->conn_id) exit("Нет связи с сервером");
     if(!@
mysql_slect_db($this->sql_tbname,$this->conn_id))
     {
      echo(
"<p>В настоящий момент база данных не доступна, поэтому корректное отображение страницы невозможно.</p>");
     }
    }


   function 
sql_execute()
    {
     
$this->sql_res mysql_query($this->sql_query);
    }


   function 
sql_close()
    {
     
mysql_close($this->conn_id);
    }
}

///////////////////////////////////////////////////////////////////////////////////////////

extract($_REQUEST);
$obj = new class_mysql();

$obj->nik  "jhjhghy";
$obj->mail "lkjhg";
$obj->icq  "eyg";
$obj->comm "uhdg";

$obj->sql_connect();
$obj->sql_query="INSERT INTO mesagi (msg_id,msg_nik,msg_mail,msg_icq,book_comm) VALUES ('','$obj->nik','$obj->mail','$obj->icq','$obj->comm')";
$obj->sql_execute();

?>

Ошибок не выдаёт, но и в базу ничего не добавляет :(((

   
 
 автор: cheops   (29.12.2005 в 02:39)   письмо автору
 
   для: Oligarx   (28.12.2005 в 23:01)
 

У вас ошибка в имени функции mysql_select_db(), а символ подавления вывода ошибок @ не даёт PHP сообщить об этом...

   
Rambler's Top100
вверх

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