Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Программирование > PHP

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 09.09.2002, 18:13
  № 1  
ama2001
Guest

Сообщений: n/a
По умолчанию Помогите тупому дятлу вылезти из окопа

люди знаю номер записи в базе, как презаписать все значения этой записи...
СЕНКС

Старый 09.09.2002, 19:26
ihorko вне форума Посмотреть профиль Отправить личное сообщение для ihorko Посетить домашнюю страницу ihorko Найти все сообщения от ihorko
  № 2  
ihorko
Теоретик и Практик
 
Аватар для ihorko

Регистрация: Mar 2001
Адрес: Київ, .NET.UA
Сообщений: 1,173
Отправить сообщение для ihorko с помощью ICQ Отправить сообщение для ihorko с помощью AIM Отправить сообщение для ihorko с помощью Yahoo
выполнить запрос:

$sql = ' UPDATE имя_таблицы SET field1="'.$field1.'", field2="'.$field2.'" WHERE id="'.$id.'" ';

где:

$field1, $field2 - поля, значение которых надо поменять
$id - номер записи в базе
__________________
nothing | жежо

Старый 09.09.2002, 22:50
Самурай вне форума Посмотреть профиль Отправить личное сообщение для Самурай Найти все сообщения от Самурай
  № 3  
Самурай
Ветеран форума

Регистрация: Aug 2001
Адрес: /kiev.ua/butuzov
Сообщений: 3,045
Отправить сообщение для Самурай с помощью ICQ
Цитата:
SET field1="'.$field1.'", field2="'.$field2.'"


а не проще ли ...

SET field1='$field1', field2='$field2'
__________________
...

Старый 10.09.2002, 00:48
ihorko вне форума Посмотреть профиль Отправить личное сообщение для ihorko Посетить домашнюю страницу ihorko Найти все сообщения от ihorko
  № 4  
ihorko
Теоретик и Практик
 
Аватар для ihorko

Регистрация: Mar 2001
Адрес: Київ, .NET.UA
Сообщений: 1,173
Отправить сообщение для ihorko с помощью ICQ Отправить сообщение для ihorko с помощью AIM Отправить сообщение для ihorko с помощью Yahoo
как знать, как знать...

правила и "понятия" кавычек (для тех, кто в танке):

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

это понятно, да?
а теперь ситуация... тебе надо не просто переменную, а функцию... например, банально - addslashes(); с твоим подходом придется делать так:
$var = addslashes($var);
$sql = " ... var='$var'";
c моим подходом делается проще:
$sql = ' ... var="'.addslashes($var);.'" ';

мой подход (ну, не мой - просто один из хороших подходов) аналогичен подходу пхп+хтмл вместо полного пхп (где тупая строчка <p> выводится с помощью оператора echo), тоесть типа того:
<?
пхп-скрипт
?>
хтмл-код
<?
пхп-скрипт
?>

не хочу затевать спор, но имхо доказано что подход, который я использую хоть и выглядит немного коряво на первый взгляд, является более эффективным и более удобным для интерпретатора...
__________________
nothing | жежо

Старый 10.09.2002, 10:54
  № 5  
ama2001
Guest

Сообщений: n/a
чет не работает...

Я наверно еще и запись не правильно ищу да?

<?
mysql_connect("localhost","aaa","bbb","zzz");
mysql_select_db("db5");
$res=mysql_query("SELECT * FROM db_user_partners");
$rows=mysql_num_rows($res);
$ccc="dido";
for($i=0; $i<$rows; $i++)
{
$u_id=mysql_result($res,$i,1);
if($u_id==$login)
{
$res=mysql_query("UPDATE db_user_partners SET firm_name='.$ccc.' WHERE id='.$i.'");
break;
}
}
?>

Старый 10.09.2002, 11:16
  № 6  
ama2001
Guest

Сообщений: n/a
Слушайте можете обяснить вообще по какоому принципу работает
int mysql_query(string query, int [link_identifier] );
я не все допонимаю...

Старый 10.09.2002, 11:54
  № 7  
ama2001
Guest

Сообщений: n/a
Даже это не работает... Лажа какая-то

<?
mysql_connect("localhost","Uwww530S","XAiGcMwH","udb530");
mysql_select_db("udb530");
$p1="aaa";
$p2="8";
mysql_query( "INSERT INTO db_tovar_type ( tovar_type, tovar_id)
VALUES ( '$p1', '$p2')");
?>


Помогите А?

Старый 10.09.2002, 16:11
ihorko вне форума Посмотреть профиль Отправить личное сообщение для ihorko Посетить домашнюю страницу ihorko Найти все сообщения от ihorko
  № 8  
ihorko
Теоретик и Практик
 
Аватар для ihorko

Регистрация: Mar 2001
Адрес: Київ, .NET.UA
Сообщений: 1,173
Отправить сообщение для ihorko с помощью ICQ Отправить сообщение для ihorko с помощью AIM Отправить сообщение для ihorko с помощью Yahoo
int mysql_query(string query, int [link_identifier] ) означает, что
для запуска функции необходим один обязательный параметр - string query - именно сам SQL-запрос, который должен быть строкой, а также один необязательный параметр - int [link_identifier] - идентификатор соединения с базой, установленный с помощью функции mysql_connect (mysql_pconnect), который должен быть целым числом (ну это понятно, идентификатор же)... если идентификатор не указать явно, то функция попытается использовать последнее подключение к бд. ну а слово int перед именем функции означает, что она возвращает результат - целое число. это есть идентификатор, который потом можно использовать для других функций, например mysql_fetch_row();

с этим понятно?

а теперь по твоим скриптам.... ты не думал об необходимости выводить ошибки? для того чтобы понять, что не так... основная рекоменданция начинающим программистам: не глушите сообщения об ошибках. если глушите - напишите свою функцию, которая будет выводить детальную информацию об ошибках. в твоем случае делаем так:

$db = mysql_connect ('localhost', 'root', 'root') or die ( mysql_error() );
mysql_select_db ('db1') or die ( mysql_error() );
...
$sql = "SELECT * FROM db1 WHERE id='1'";
$result = mysql_query ($sql) or die ( mysql_error() );

сравниваем с твоим кодом и делаем выводы:
- ты не сохраняешь идентификатор соединения с бд. пока скрипты простые, все нормально. потом без этого не обойдешся, а переучиваться - ОЧЕЕЕЕНЬ сложно.
- ты не прекращаешь культурно выполнение сценария выводя ошибку в этом месте. поэтому не понимаешь, что происходит, и почему ничего не работает.
- удобнее SQL-запрос делать отдельной переменной, передавая ее в функцию mysql_query. это действительно удобнее, например если надо запустить разные запросы при разных условиях.

и последний совет... достань книгу по MySQL или скачай мануалу, и читай, читай, читай... потому что MySQL как реализация языка SQL является такими дебрями по сравнению с ПХП... просто ужас...
__________________
nothing | жежо


Последний раз редактировалось ihorko; 10.09.2002 в 16:14.
Старый 10.09.2002, 18:28
  № 9  
ama2001
Guest

Сообщений: n/a
за долгое время на форуме не разуу не получал столь толкового объяснения.
Спасибо...

Старый 10.09.2002, 21:39
ihorko вне форума Посмотреть профиль Отправить личное сообщение для ihorko Посетить домашнюю страницу ihorko Найти все сообщения от ihorko
  № 10  
ihorko
Теоретик и Практик
 
Аватар для ihorko

Регистрация: Mar 2001
Адрес: Київ, .NET.UA
Сообщений: 1,173
Отправить сообщение для ihorko с помощью ICQ Отправить сообщение для ihorko с помощью AIM Отправить сообщение для ihorko с помощью Yahoo
спасибо тебе за теплые слова

мне не сложно помочь... а когда вспоминаю, когда начинал, спрашивал, а мне 2 непонятных слова в ответ... то в свою очередь стараюсь уже ответить доступно...

разобрался со своим скриптом? работает?
__________________
nothing | жежо

Создать новую тему   Часовой пояс GMT +4, время: 08:27.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 08:27.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.