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

Форум MySQL

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

 

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

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

тема: Что делать если нет возможности попасть в PhpMyAdmin
 
 автор: Krasnodar   (09.11.2006 в 22:47)   письмо автору
 
 

надо сделать себя админом... компа нет, а с телефона попасть туда не могу..... есть возможность через php изменить значение в базе?

   
 
 автор: cheops   (09.11.2006 в 22:54)   письмо автору
 
   для: Krasnodar   (09.11.2006 в 22:47)
 

Да, phpMyAdmin - это всего лишь Web-интерфейс, написанный на PHP. Всё что может он - можете и вы (даже чуть-чуть побольше). Для изменения содержимого столбца field в таблице tbl для записи, чьё поле fld = 3, необходимо выполнить запрос
<?php
  
// Устанавливаем соединение с базой данных MySQL
  
require_once("config.php");
  
// Выполняем редатирование
  
$query "UPDATE tbl SET field = 'value' WHERE fld = 3";
  
mysql_query($query);
?>

   
 
 автор: Krasnodar   (12.11.2006 в 19:30)   письмо автору
 
   для: cheops   (09.11.2006 в 22:54)
 

скажите пожалуйста, а как проверить результат записи? есть таблица в которой 3 столбца (field1, field2, field3) как вывести на php страницу результат типа
field1: значение столбца field1;
field2: значение столбца field2;
field3: значение столбца field3;

   
 
 автор: cheops   (12.11.2006 в 19:43)   письмо автору
 
   для: Krasnodar   (12.11.2006 в 19:30)
 

Для этого можно воспользоваться следующим скриптом
<?php
   
// Устанавливаем соединение с базой данных MySQL 
  
require_once("config.php"); 
  
// Выводим содержимое таблицы tbl
  
$query "SELECT * FROM tbl";
  
$tbl mysql_query($query);
  if(!
$tbl) exit("Ошибка - ".mysql_error());
  if(
mysql_num_rows($tbl))
  {
    echo 
"<table border=1>";
    while(
$table mysql_fetch_array($tbl))
    {
       echo 
"<tr>
              <td>
$table[field1]<td>
              <td>
$table[field2]<td>
              <td>
$table[field3]<td>
             </tr>"
;
    }
    echo 
"</table>";
  }
?>

Возможно вас также заинтересует тема по ссылке http://www.softtime.ru/forum/read.php?id_forum=3&id_theme=19122.

   
 
 автор: Krasnodar   (12.11.2006 в 19:48)   письмо автору
 
   для: cheops   (12.11.2006 в 19:43)
 

в первом примере кода (запись значений) имеется параметр fld, что это да параметр? объясните пожалуйста....

   
 
 автор: cheops   (12.11.2006 в 19:56)   письмо автору
 
   для: Krasnodar   (12.11.2006 в 19:48)
 

Это имя столбца в таблице tbl, запрос обновляет только те записи у которых в столбце fld значение 3. В противном случае, если не использовать WHERE-конструкцию будут обновлены все записи таблицы.

   
 
 автор: Krasnodar   (12.11.2006 в 19:58)   письмо автору
 
   для: cheops   (12.11.2006 в 19:56)
 

т.е. 3 получается константой?

   
 
 автор: cheops   (12.11.2006 в 20:01)   письмо автору
 
   для: Krasnodar   (12.11.2006 в 19:58)
 

Да, но вы можете сформировать запрос динамически, используя переменную
<?php
 $var 
3;
 
$query "UPDATE tbl SET field = 'value' WHERE fld = ".$var;
?>

   
 
 автор: Krasnodar   (12.11.2006 в 22:47)   письмо автору
 
   для: cheops   (12.11.2006 в 20:01)
 

может я что то делаю не правильно, но у меня проблема....

делаю соединение с базой, проверяю его, все работает нормально, потом пишу
$a=mysql_query("UPDATE administrators SET name='Krasnodar' WHERE fld=3");
(!$a){"проблема в записи";}
и получаю результат
проблема в записи

   
 
 автор: cheops   (12.11.2006 в 23:26)   письмо автору
 
   для: Krasnodar   (12.11.2006 в 22:47)
 

При отладке скрипта лучше расшифровать ошибку при помощи функции mysql_error(). Исправьте скрипт следующим образом
<?php
$a
=mysql_query("UPDATE administrators SET name='Krasnodar' WHERE fld=3"); 
if(!
$a) echo "проблема в записи".mysql_error();
?>

Что теперь пишет скрипт?

   
 
 автор: Krasnodar   (12.11.2006 в 23:45)   письмо автору
 
   для: cheops   (12.11.2006 в 23:26)
 

результат
Unknown colomn 'fld' in 'where clause'

   
 
 автор: cheops   (13.11.2006 в 00:02)   письмо автору
 
   для: Krasnodar   (12.11.2006 в 23:45)
 

Хм... так просто у вас в таблице нет столбца с именем fld и вам не следует его использовать.

   
 
 автор: Krasnodar   (13.11.2006 в 17:08)   письмо автору
 
   для: cheops   (13.11.2006 в 00:02)
 

Спасибо с этим резобрался.... но теперь есть еще проблема, в базе есть 16 таблиц из них я использую "administrators" и "users". в readme скрипта написано что зайдите в phpmyadmin и в поле админ сделайте изменения... чесно говоря я не знаю что это за поле, т.к. никогда туда не заходил.

   
 
 автор: Krasnodar   (13.11.2006 в 17:17)   письмо автору
 
   для: Krasnodar   (13.11.2006 в 17:08)
 

так вот, проблема в том, что делаю запись в таблице administrators (там всего 3 столбца id, name, fid) значения колонок беру из таблици users, но когда захожу в форум под этим ником, админка не открывается....

   
 
 автор: cheops   (14.11.2006 в 00:19)   письмо автору
 
   для: Krasnodar   (13.11.2006 в 17:08)
 

> зайдите в phpmyadmin и в поле админ сделайте изменения
Какие изменения? Что требуется сделать?

   
 
 автор: Krasnodar   (14.11.2006 в 00:33)   письмо автору
 
   для: cheops   (14.11.2006 в 00:19)
 

цитирую
Для создания админа зарегистрируйте юзера на форуме, затем зайдите в структуру MySQL(Php My Admin) и выставьте ему соответствующий атрибут в поле "Admin"
пользователя я зарегистрировал....

   
 
 автор: cheops   (14.11.2006 в 00:59)   письмо автору
 
   для: Krasnodar   (14.11.2006 в 00:33)
 

Хм... а какова структура таблицы?

   
 
 автор: Krasnodar   (14.11.2006 в 01:08)   письмо автору
 
   для: cheops   (14.11.2006 в 00:59)
 

таблица здесь http://nichevo.net.ru/forums/tables.txt извините, по другому выложить ее не могу...

   
 
 автор: cheops   (14.11.2006 в 12:32)   письмо автору
 
   для: Krasnodar   (14.11.2006 в 01:08)
 

Хм... что не понятно " выставьте ему соответствующий атрибут в поле "Admin"", в таблице users такого поля нет. Вероятно имеется ввиду, что имя пользователя нужно добавить в таблицу administrators? Хм... а поле fid в каждой таблице для чего предназначено?

   
 
 автор: Krasnodar   (14.11.2006 в 12:42)   письмо автору
 
   для: cheops   (14.11.2006 в 12:32)
 

>Вероятно имеется ввиду, что имя пользователя нужно добавить в таблицу administrators?
так я добавил, но ссылку на админку не дает на этом нике...
>Хм... а поле fid в каждой таблице для чего предназначено?
это сервис форумов и fid означает номер форума

   
 
 автор: Krasnodar   (14.11.2006 в 23:01)   письмо автору
 
   для: Krasnodar   (14.11.2006 в 12:42)
 

есть еще какие-нибудь мысли?

   
 
 автор: Krasnodar   (12.11.2006 в 22:48)   письмо автору
 
   для: cheops   (12.11.2006 в 20:01)
 

читаю справочник функции по MySQL и нашел там что-то вроде
"mysql_query может выдавать ELSE если у вас не достаточно прав..."
вот вопросик, каких прав? может поэтому я не могу изменить запись в таблице administrators?

   
 
 автор: cheops   (12.11.2006 в 23:28)   письмо автору
 
   для: Krasnodar   (12.11.2006 в 22:48)
 

>mysql_query может выдавать ELSE
FALSE имеется в виду? Сложно сказать без контекста... возможно имеет ввиду привилегии, но лучше выяснить в чём проблема обработав ошибку при помощи mysql_error(), по сообщению, как правило, можно однозначно сказать в чём дело.

   
 
 автор: aexb   (15.11.2006 в 15:11)   письмо автору
 
   для: Krasnodar   (09.11.2006 в 22:47)
 

Друзья! А вы знаете, что PhpMyAdmin можно скачать с официального сайта и поставить самому без согласия/несогласия хостера? Ставится как обычное веб-приложение. Подключается за 1.5 минуты. И работает с обычным логином/паролем для БД.

   
 
 автор: tAleks   (15.11.2006 в 15:39)   письмо автору
 
   для: aexb   (15.11.2006 в 15:11)
 

А че обычно на это надо согласие хостера?

   
 
 автор: aexb   (15.11.2006 в 15:57)   письмо автору
 
   для: tAleks   (15.11.2006 в 15:39)
 

просто обычно хостинги выносят пхпмайадмин как дополнительную опцию к тарифу. да и тут сказано, что в дефолтовый пхпмайадмин (тот, который предоставляет хостер по умолчанию. у меня, например, такой есть) зайти возможности нет. вот я и :-)

   
 
 автор: Krasnodar   (15.11.2006 в 18:48)   письмо автору
 
   для: aexb   (15.11.2006 в 15:57)
 

ну скачать то я его скачал, но он весит 2 метра, а онлайн фтп такие архивы не распаковывает.... и как быть? компа у меня нет....

   
 
 автор: Krasnodar   (16.11.2006 в 13:14)   письмо автору
 
   для: Krasnodar   (15.11.2006 в 18:48)
 

ну помогите пожалуйста сделать админа на форуме.....

   
Rambler's Top100
вверх

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