PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (3): [1] 2 3 »

> Найдено сообщений: 33
dr_Lev Отправлено: 27 Декабря, 2008 - 21:42:43 • Тема: проблема с числовыми и строчными индексами массивов • Форум: Программирование на PHP

Ответов: 5
Просмотров: 379
Champion пишет:
dr_Lev пишет:
Не хочется загружать базу данных, потому как слишком часто прийдется в базу заглядывать, а сервак слабенький, тормоза начнутся.
Вам от этого больше раз к базе данных обращаться не прийдется. А вот держать данных в памяти будете гораздо меньше

Не знал, спасибо за разъяснение =). Так и поступлю.
dr_Lev Отправлено: 27 Декабря, 2008 - 10:25:38 • Тема: проблема с числовыми и строчными индексами массивов • Форум: Программирование на PHP

Ответов: 5
Просмотров: 379
Champion пишет:
зачам так извращаться с данными? Строки из БД надо брать по одной по меренадобности. Зачем сразу всё вытаскивать?

Не хочется загружать базу данных, потому как слишком часто прийдется в базу заглядывать, а сервак слабенький, тормоза начнутся.
Champion пишет:
var_dump снова и внимательно. там нет такого элемента. И вар_дамп не пишет так, как вы написали.

прошу прощения =) это я хотел поставить [ i ] [ / i ], а они не сработали =)
(Добавление)
Чет мне кажется, что все должно быть предельно просто =).
PHP:
скопировать код в буфер обмена
  1. $sql = "SELECT * FROM `table`";
  2. $query = mysql_query($sql,$link);
  3. while ($row = mysql_fetch_assoc($query))
  4. {
  5.    $result[] = $row;
  6. }
  7.  


В понедельник проверю...
dr_Lev Отправлено: 26 Декабря, 2008 - 21:24:17 • Тема: проблема с числовыми и строчными индексами массивов • Форум: Программирование на PHP

Ответов: 5
Просмотров: 379
Привет всем, помогите разобраться, почему не работает такая штука:
PHP:
скопировать код в буфер обмена
  1.  
  2. /* Здесь я из базы вытягиваю данные в двумерный массив $result */
  3. $sql = "SELECT * FROM `table`";
  4. $query = mysql_query($sql,$link);
  5. $j=0;
  6. while ($row = mysql_fetch_array($query)) // пока есть еще записи в таблице
  7. {
  8.    for ($i=0;$i<mysql_num_fields($query);$i++) // для всех полей текущей записи
  9.    {
  10.       $result[$j][mysql_field_name($query,$i)]=$row[$i];
  11.    }
  12.    $j++;
  13. }
  14.  
  15. echo var_dump($result[0]); /* пишет  [i]array(4) { ["id"]=>  string(1) "1" ["fullname"]=>  string(4) "name" ["rules"]=>  string(0) "" ["email"]=>  string(5) "email" } [/i] */
  16.  

пытаюсь обратиться к элементу массива
PHP:
скопировать код в буфер обмена
  1.  
  2. echo $result[0]['email'];
  3. //Выдает ошибку Notice: Undefined index: email in ................
  4. /* а когда так */
  5. echo $result[0][3]; //Ошибки нет
  6.  
dr_Lev Отправлено: 05 Декабря, 2008 - 18:03:05 • Тема: Как спрятать кнопку при печати? • Форум: JavaScript & VBScript

Ответов: 2
Просмотров: 1781
Спаисибо, помогло =)
dr_Lev Отправлено: 04 Декабря, 2008 - 11:21:21 • Тема: Как спрятать кнопку при печати? • Форум: JavaScript & VBScript

Ответов: 2
Просмотров: 1781
Делаю печать страницы через onClick(window.print()) кнопки. Подскажите, как не выводить кнопку на печать?
dr_Lev Отправлено: 27 Августа, 2008 - 08:11:32 • Тема: динамический список стран и городов • Форум: JavaScript & VBScript

Ответов: 4
Просмотров: 6322
http://xhtml[dot]ru/2006/02/11/dynamic-select/
dr_Lev Отправлено: 20 Августа, 2008 - 08:04:30 • Тема: как с помощью массива удалить выбранные поля из БД • Форум: SQL и Архитектура БД

Ответов: 10
Просмотров: 90
Протестить пока немогу...
попробуй собрать массив в строку через запятую с пробелом (хотя сомневаюсь, что сработает) :
PHP:
скопировать код в буфер обмена
  1. $arr_news_as_string = implode(', ' , $arr_news);//здесь собирается массив в строку, через

и обреж пробел последний :
PHP:
скопировать код в буфер обмена
  1. $arr_news_as_string = trim ($arr_news_as_string);

Если не выйдет, тогда засунь все в цикл :
CODE (text):
скопировать код в буфер обмена
  1.  
  2. $arr_news= id1,id2,id3...idn, ;
  3. for ($i=0;$i<count($arr_news);$i++)
  4. {
  5.     mysql_query("DELETE FROM news WHERE 'id'=$arr_news[$i]",$db);
  6. }
  7.  

Здесь можно и не писать проверку на пустой массив, тело цикла при пустом массиве не будет выполняться
dr_Lev Отправлено: 19 Августа, 2008 - 08:40:47 • Тема: Выборка из 2 баз mysql • Форум: SQL и Архитектура БД

Ответов: 2
Просмотров: 42
Djin_dj пишет:

PHP:
скопировать код в буфер обмена
  1. <?
  2. $result1 = mysql_db_query ("base1", "SELECT * FROM table1 WHERE Articul = \"$artic\"");
  3. if ($result1 == 'true')
  4. {
  5.  

Вот где твоя ошибка, при запросе SELECT функция вернет указатель или false при ошибке, но никогда не вернет true. (http://www.php.su/functions/?mysql-db-query)
PHP:
скопировать код в буфер обмена
  1. <? if ($result1 != false)//false пиши без кавычек ?>
dr_Lev Отправлено: 18 Августа, 2008 - 11:56:47 • Тема: как с помощью массива удалить выбранные поля из БД • Форум: SQL и Архитектура БД

Ответов: 10
Просмотров: 90
Попробуй так:
CODE (text):
скопировать код в буфер обмена
  1.  
  2. <?php
  3. $arr_news_as_string = implode(','$arr_news);//здесь собирается массив в строку, через запятую
  4. mysql_query("DELETE FROM news WHERE 'id' IN ($arr_news_as_string)",$db);
  5. ?>
  6.  
dr_Lev Отправлено: 15 Августа, 2008 - 13:22:14 • Тема: Распарсить table • Форум: Программирование на PHP

Ответов: 4
Просмотров: 546
У меня получилось чтото такое ...
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $str = '<tr> <td>AA</td> <td>11</td> <td>BB</td> <td param1=1 param2=C>22</td> </tr>';
  3.  
  4. $str = str_replace('<tr>','',$str);//  " <td>AA</td> <td>11</td> <td>BB</td> <td param1=1 param2=C>22</td> </tr>"
  5. $str = str_replace('</tr>','',$str);//  " <td>AA</td> <td>11</td> <td>BB</td> <td param1=1 param2=C>22</td> "
  6. $str = str_replace('</td>','',$str);//  " <td>AA <td>11 <td>BB <td param1=1 param2=C>22 "
  7. $str = str_replace('<td>','',$str);//   " AA 11 BB <td param1=1 param2=C>22 "
  8. $str = str_replace('>',' ',$str);//       " AA 11 BB <td param1=1 param2=C 22 "
  9. $str = str_replace('<td ','',$str);//    " AA 11 BB param1=1 param2=C 22 "
  10. $str = trim($str);//                         "AA 11 BB param1=1 param2=C 22"
  11. $str = explode(' ',$str);// делим строку на массив
  12.  
  13. for ($i=0;$i<count($str);$i++)
  14. {
  15. if (strpos($str[$i],'=')!=false)
  16.       {$param[]=explode('=',$str[$i]);}
  17.   else
  18.       {$intags[]=$str[$i];}
  19. }
  20.  
  21. echo 'Значения между тегами :';
  22.  
  23. for ($i=0;$i<count($intags);$i++)
  24. {
  25.  echo '"'.$intags[$i].'" ';
  26. }
  27.  
  28. for ($i=0;$i<count($param);$i++)
  29. {
  30.  echo '<br>параметр с именем : "'.$param[$i][0].'", имеет значение: "'.$param[$i][1].'"';
  31. }
  32.  
  33. ?>
  34. результат :
  35.  
  36. Значения междку тегами :"AA" "11" "BB" "22"
  37. параметр с именем : "param1", имеет значение: "1"
  38. параметр с именем : "param2", имеет значение: "C"
  39.  


Решение конечно корявое, и если гдето добавить лишний пробел, результат будет совсем другой.
dr_Lev Отправлено: 14 Августа, 2008 - 15:29:08 • Тема: Ищу учителя по php в Орле • Форум: Объявления

Ответов: 5
Просмотров: 3604
Поищи в инете гдето есть курсы Евгения Попова PHP&MySQL, правда не дешевые.
Я сам азы по этим курсам изучал. А потом пошли уже справочники всякие и форумы вроде такого, на которых очень много информации.

или на intuit.ru регистрируйся, и изучай курсы php
dr_Lev Отправлено: 14 Августа, 2008 - 09:25:34 • Тема: ПОМОГИТЕ!!! • Форум: Программирование на PHP

Ответов: 6
Просмотров: 406
я бы сделал так:
PHP:
скопировать код в буфер обмена
  1.  
  2. function repl($string)
  3. {
  4.   $string = explode('--',$string); //разбиваем строку на массив 'n' 'mem-mem'
  5.   return = $string[1]; //оставляем только 'mem-mem';
  6. }
  7.  
dr_Lev Отправлено: 13 Августа, 2008 - 17:20:03 • Тема: корректность кода • Форум: Прочее

Ответов: 8
Просмотров: 81
K-Vrat пишет:
Работает нормально, но имх принцип - если работает=правильно, это не есть гуд, потому и спрашиваю

если тебе уж так сильно не нравится это код, тогда предлагаю аналог:
PHP:
скопировать код в буфер обмена
  1.  
  2. while ($row=mysql_fetch_assoc($result))
  3. {
  4.   $vps_props[] = $row;
  5. }
  6.  

или
PHP:
скопировать код в буфер обмена
  1.  
  2. $i = 0;
  3. while ($row=mysql_fetch_assoc($result))
  4. {
  5.   $vps_props[$i] = $row;
  6.   $i++
  7. }
  8.  
dr_Lev Отправлено: 13 Августа, 2008 - 13:31:10 • Тема: корректность кода • Форум: Прочее

Ответов: 8
Просмотров: 81
Все написано правильно.

Тело цикла заполнять и необязательно в данном примере.
Т.К. во время беребора по базе данных, все строки уже заносятся в массив $vps_props[]
dr_Lev Отправлено: 11 Августа, 2008 - 08:48:56 • Тема: Локальный сайт • Форум: Apache и другие веб-серверы

Ответов: 7
Просмотров: 486
Спасибо, все работает, но появилась еще одна проблема =)
У нас стоит прокси сервер, и на локальный сайт можно зайти только отключив настройки подключения через прокси в браузере. Но тогда нельзя выйти в интернет Растерялся .
Может какую-то еще утилитку поставить нужно? Стоит апач мускул и пыха

Страниц (3): [1] 2 3 »
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB