Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> укажите на ошибки, меня это уже достало 
:(
    Опции темы
Bangladesh
  Дата 21.1.2005, 04:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


AsBest
***


Профиль
Группа: Завсегдатай
Сообщений: 1089
Регистрация: 4.9.2004
Где: Калининград

Репутация: нет
Всего: 17



Код

<?



            mysql_connect($server) OR DIE ("Не получается коннект с");
            mysql_select_db("gauntlet") OR DIE ("Чего-то не то с базой данных");
            $zapros = "SELECT * FROM novosty WHERE choise = 'news'";
            $res = mysql_query($zapros) OR DIE ("Возможно не существует такой таблицы или неправильное имя");
            $number = mysql_num_rows($res);

             if($number==0){
               echo "<div align='center'>сообщений нет</div>";
               }
             else {
               while($row=mysql_fetch_array($res)) {
               echo "<b>Дата:".$row['date']." , Заголовок:". $row['ah']."<b><br>";
               echo "<div align='justify'>".$row['news']."</div>";
               echo "<br><br>";
               }
              }
              mysql_close();

            ?>


он говорит, что типа не существует таблицы...


--------------------
ок
PM MAIL WWW ICQ Skype   Вверх
Vaulter
Дата 21.1.2005, 08:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1724
Регистрация: 30.12.2002
Где: бункер

Репутация: 6
Всего: 22



I, GyoZ
так а ты уверен что таблица novosty есть в БД gauntlet.


--------------------
PM MAIL WWW ICQ   Вверх
penizillin
Дата 21.1.2005, 14:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 312
Регистрация: 10.11.2004

Репутация: 8
Всего: 9



если срабатывает третий "OR DIE", возможна ошибка в запросе.
PM MAIL ICQ   Вверх
Irokez
Дата 21.1.2005, 15:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


индеец
***


Профиль
Группа: Участник Клуба
Сообщений: 1180
Регистрация: 20.10.2004

Репутация: 22
Всего: 53



сделай так:
$res = mysql_query($zapros) OR DIE('Ошибка: '.mysql_error());
PM   Вверх
Mal Hack
Дата 21.1.2005, 15:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



Пусть выведет mysql_error();
PM ICQ   Вверх
Bangladesh
Дата 22.1.2005, 01:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


AsBest
***


Профиль
Группа: Завсегдатай
Сообщений: 1089
Регистрация: 4.9.2004
Где: Калининград

Репутация: нет
Всего: 17



smile а я долго копался... нашел эту хребаную ошибку:

Код

$res = mysql_query($zapros) OR DIE ("Возможно не существует такой таблицы или неправильное имя");



это переменная, а между ) и OR , а также OR и DIE , DIE и ( пробелы стоят. для нормальной работы надо было всего навсего взять это все в скобки вот так:

Код

$res = "mysql_query($zapros) OR DIE ('Возможно не существует такой таблицы или неправильное имя')";


ну а теперь вопрос, не менее важный для меня:

вот скрипт проверки пароля и логининга, который я сам придумал. но проблема в том, что он всегда выводит ошибку, что пароль не совпадает. т.е. не создает переменную $access. Вот код:

Код

<?

        //Проверка на ошибки


         if(empty($name)){
          $error = "<li>Вы не ввели имя<br>";
         }
         if(empty($password)){
          $error = $error."<li>Вы не ввели пароль";
         }

         if(!empty($error)){
          echo "<div align='center'>Вход не прошел успешно:<br><Br>";
          echo "<b>$error</b></div>";
         }

         else {

         //Количество имен - обязательно для заполнения
         $qua = 2;
         //Минимальное количество имен - не для исправления
         $gua_min = 1;

          /*
          КАК ДОБАВЛЯТЬ НОВОГО ПОЛЬЗОВАТЕЛЯ:
          1. Добавить переменную имени в массив "имена"
          2. Добавить переменную пароля в массив "пароли"
          3. Задать им одинаковый индекс (пишется в квадратных скобках, например 2)
          4. Увеличть переменную $qua, что находится ваше на 1 (с каждым новым
          пользователем).

          Удачной работы!
          */

          // Имена
          $nm[1] = "user1";
          $nm[2] = "user2";

          // Пароли
          $pwd[1] = "iuser1";
          $pwd[2] = "iuser2";

          //Проверка имени или пароля
           while(++$gua_min <= $qua)
            {
             if($name==$nm['$gua_min']){
              if($password==$pwd['$gua_min']){
               $access = "open";
               }
             }
            }

          //Проверка доступа
           if(!empty($access)){
            require "admin/panel.tpl";
           }
           else {
            echo "<div align='center'>Вход не прошел успешно:<br><Br>";
            echo "<b><li> Ошибка. Возможно имя неподходит к вашему паролю, или пароль к имени :)<br>Или они оба неправильные. </b></div>";
           }
          }

       ?>


вместо имен и паролей я естесственно другое использую smile


--------------------
ок
PM MAIL WWW ICQ Skype   Вверх
Irokez
Дата 22.1.2005, 13:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


индеец
***


Профиль
Группа: Участник Клуба
Сообщений: 1180
Регистрация: 20.10.2004

Репутация: 22
Всего: 53



во первых:
Код

             if($name==$nm['$gua_min']){
              if($password==$pwd['$gua_min']){

тут надо убрать одинарные кавычки

во-вторых:
Код

           while(++$gua_min <= $qua)

начинает цикл с $qua_min=2, поэтому проверяет начиная со второго элемента массива, лучше использовать foreach
PM   Вверх
Mal Hack
Дата 22.1.2005, 13:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



Цитата(Irokez @ 22.1.2005, 13:07)
тут надо убрать одинарные кавычки

Неа.... В одно условие объединить.
Цитата(I)
$res = "mysql_query($zapros) OR DIE ('Возможно не существует такой таблицы или неправильное имя')";

Это еще зачем? Ты писваиваешь вместо резалта - СТРОКУ с кодом.

PM ICQ   Вверх
Irokez
Дата 22.1.2005, 13:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


индеец
***


Профиль
Группа: Участник Клуба
Сообщений: 1180
Регистрация: 20.10.2004

Репутация: 22
Всего: 53



Цитата(Mal @ 22.1.2005, 13:50)
Цитата(Irokez @ 22.1.2005, 13:07)
тут надо убрать одинарные кавычки

Неа.... В одно условие объединить.

Даа...
$nm['$qua_min'] - в одинарных кавычках $qua_min расценивается не как переменная, а как строка - $qua_min, которой конечно же нет в списке ключей массива $nm
PM   Вверх
Mal Hack
Дата 22.1.2005, 13:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



Irokez
сорри проглючило... Да, кавычки там не нужны...
PM ICQ   Вверх
Bangladesh
Дата 23.1.2005, 01:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


AsBest
***


Профиль
Группа: Завсегдатай
Сообщений: 1089
Регистрация: 4.9.2004
Где: Калининград

Репутация: нет
Всего: 17



Цитата(Mal @ 22.1.2005, 12:50)

Цитата(I)
$res = "mysql_query($zapros) OR DIE ('Возможно не существует такой таблицы или неправильное имя')";

Это еще зачем? Ты писваиваешь вместо резалта - СТРОКУ с кодом.

smile вот именно , что строку с кодом... но в этой строке результат не нужен! это перменная. результат там, куда я подставлю эту перменную:




--------------------
ок
PM MAIL WWW ICQ Skype   Вверх
Mal Hack
Дата 23.1.2005, 01:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



I, GyoZ
Какой результат... У тебя в $res строка будет. Никакого результата.
PM ICQ   Вверх
Bangladesh
Дата 23.1.2005, 01:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


AsBest
***


Профиль
Группа: Завсегдатай
Сообщений: 1089
Регистрация: 4.9.2004
Где: Калининград

Репутация: нет
Всего: 17



а можно просто $qua_min указывать на единицу меньше??? так тоже удобно


--------------------
ок
PM MAIL WWW ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0577 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.