Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Обсуждение уроков. [8]

 PHP.SU

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


 Страниц (11): В начало « ... 3 4 5 6 7 [8] 9 10 11 » 

> Без описания
Champion Супермодератор
Отправлено: 15 Апреля, 2010 - 15:31:34
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




По поводу фигурной скобки. Не скажу, куда ее надо поставить. Потому что скрипты даны для понимания, а не для бездумного копирования. Опыт показывает, что обучение на скриптах, которые нужно отладить, проходит эффективнее.
Хотя, думаю, что ошибка не спициально допущена.
Тут даже не задумываясь над логикой скрипта видно, куда скобку вставить
(Добавление)
Petro пишет:
На сколько я знаю *. bmp
Расширение - это просто подсказка Винде, какой программой открыть файл.
 
 Top
Вова
Отправлено: 19 Мая, 2010 - 05:06:25
Post Id


Новичок


Покинул форум
Сообщений всего: 1
Дата рег-ции: Май 2010  


Помог: 0 раз(а)




Здравствуйте господа разработчики, вопрос касаемый урока 3 или правильнй выразиться нашол там ошибку, в части передачи переменной по ссылке если она там допущена специально можно не читать дальше пост Улыбка когда я вставляю в приложение для чтение кода -
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. function func(&$var1, &$var2)
  3. {
  4.     $res = $var1 + $var2;
  5.     $var2 = $var2 * 2;
  6.     $var1 = $var1 * $var2;
  7.     return $res;
  8. }
  9. $a = 3;
  10. $b = 4;
  11. echo func($a, $b); // 7
  12. echo $a; // 12
  13. echo $b; //8
  14. ?>

а затем -
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. function func()
  3. {
  4.     global $var1, $var2;
  5.     $res = $var1 + $var2;
  6.     $var2 = $var2 * 2;
  7.     $var1 = $var1 * $var2;
  8.     return $res
  9. }
  10. $var1 = 3;
  11. $var2 = 4;
  12. echo func(); // 7
  13. echo $var1; // 12
  14. echo $var2; //8
  15. ?>


сначала подумал что из за отсутствия return $res <- ";", кстати ее там действительно нехватает. Но вся загвоздка оказалась в другом из за определяемой одинаковой функции "func", во втром коде переименовал на "funcc" и все заработало...может я чего не до понял, потому что не знаю что я не так сделал еще что деневр выдавал ошибку в коде...но после исправления все заработала.)) да и еще echo $var1; // 12 выводит не 12 а 24 не столь важно....можете удалить этот пост если он безпочвенный и ошибки были допущены умышленно что бы застваить юзера догадаться в чем..)

Вот мой вариант как мне кажеться должно было быть:

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. function func(&$var1, &$var2)
  3. {
  4.     $res = $var1 + $var2;
  5.     $var2 = $var2 * 2;
  6.     $var1 = $var1 * $var2;
  7.     return $res;
  8. }
  9. $a = 3;
  10. $b = 4;
  11. echo func($a, $b)." "; // 7
  12. echo $a." "; // 24
  13. echo $b." "; //8
  14. ?>
  15.  
  16. <?PHP
  17. echo "<br>";
  18. function funcc()
  19. {
  20. global $var1, $var2;
  21. $res = $var1 + $var2;
  22. $var2 = $var2 * 2;
  23. $var1 = $var1 * $var2;
  24. echo $res;
  25. }
  26. $var1 = 5;
  27. $var2 = 10;
  28. echo funcc()." ";// 15
  29. echo $var1." ";// 100
  30. echo $var2." ";// 20
  31. ?>


P.S. с уважением ManuL

(Отредактировано автором: 19 Мая, 2010 - 05:22:07)

 
 Top
EvgenyRus
Отправлено: 17 Июня, 2010 - 09:28:10
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Июнь 2010  


Помог: 0 раз(а)




Вова поменяй 6 и 7 строку местами и будет не 24 а 12 выдовать! Ошибку допустили в том месте админы!
<?PHP
function func()
{
global $var1, $var2;
$res = $var1 + $var2;
$var2 = $var2 * 2;
$var1 = $var1 * $var2;
return $res
}
$var1 = 3;
$var2 = 4;
echo func(); // 7
echo $var1; // 12
echo $var2; //8
?>
 
 Top
koka
Отправлено: 10 Июля, 2010 - 20:26:19
Post Id



Гость


Покинул форум
Сообщений всего: 115
Дата рег-ции: Июнь 2010  
Откуда: Россия, Ижевск


Помог: 1 раз(а)




Здравствуйте. Вопрос по уроку номер 11 (или 14) - CURL

Скажите, что это за символы, откуда они берутся
Цитата:
curl_setopt($ch, CURLOPT_POSTFIELDS, 'action=login&imembername=valenok&ipassword=ne_skaju&submit=%C2%F5%EE%E4');

Например, у сайта, с которого мне нужно получить информацию стоит value=Авторизация.
В Live http Headers я эту информацию (символы) не нашёл.
Где мне можно перевести слово Авторизация в этот код. Или этого не обязательно делать???


-----
http://rulevoi[dot]net - запчасти для иномарок в Ижевске
 
 Top
Champion Супермодератор
Отправлено: 10 Июля, 2010 - 20:37:12
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




%C2%F5%EE%E4 - это слово Вход. Просто с ним сделали urlencode().
 
 Top
koka
Отправлено: 10 Июля, 2010 - 20:42:37
Post Id



Гость


Покинул форум
Сообщений всего: 115
Дата рег-ции: Июнь 2010  
Откуда: Россия, Ижевск


Помог: 1 раз(а)




Champion пишет:
%C2%F5%EE%E4 - это слово Вход. Просто с ним сделали urlencode().

Спасибо, просто не знад такую банальную вещь Растерялся
(Добавление)
Вопрос по уроку номер 11 (или 14) - CURL.

Как можно разобрать регулярным выражением
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $ch = curl_init('http://ssdfwerf.ru');
  3. curl_setopt($ch, CURLOPT_POST, 1);
  4. curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (бла бла бла..) ");
  5. curl_setopt($ch, CURLOPT_POSTFIELDS, 'login=ssss&pass=ssss&rem=1&submit=%D0%90%D0%B2%D1%82%D0%BE%D1%80%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F');
  6. curl_setopt($ch, CURLOPT_COOKIEJAR, "my_cookies.txt");  
  7. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  8. curl_setopt($ch, CURLOPT_NOPROGRESS, 1);
  9. curl_setopt($ch, CURLOPT_CURLOPT_FILE, "grab.txt");
  10. //array = curl_multi_getcontent($ch);
  11.  
  12. preg_match('|(.*)<body>(.*)</body>|is', curl_multi_getcontent($ch), $data);
  13. echo $data;
  14.  
  15.  
  16.  
  17. ?>    


При работе функции preg_match выдаёт
Также пишет ошибку
PHP:
скопировать код в буфер обмена
  1. curl_setopt(): supplied argument is not a valid File-Handle resource in /home/site/public_html/test/test.php on line 9

(Отредактировано автором: 10 Июля, 2010 - 21:28:51)



-----
http://rulevoi[dot]net - запчасти для иномарок в Ижевске
 
 Top
Champion Супермодератор
Отправлено: 10 Июля, 2010 - 21:31:51
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




$data - массив. Массив можн просмотреть функцией var_dump($data);
Ошибку выдает - не знаю почему... может быть буква с русская в $ch.
 
 Top
koka
Отправлено: 10 Июля, 2010 - 21:39:03
Post Id



Гость


Покинул форум
Сообщений всего: 115
Дата рег-ции: Июнь 2010  
Откуда: Россия, Ижевск


Помог: 1 раз(а)




Champion пишет:
$data - массив. Массив можн просмотреть функцией var_dump($data);
Ошибку выдает - не знаю почему... может быть буква с русская в $ch.

Проверил русской буквы в ch нет.....

Использовал var_dump($data), выдаёт

(Добавление)
как я знаю, извлечь нужные данные из CURL можно только с помощью регулярных выражений???
(Добавление)

Изменил регулярное выражение на preg_match('|(.*)<body>(.*)</body>|is',curl_multi_getcontent($ch), $data, $m);, теперь всё выдаёт нормально.
Но с ошибкой
CODE (html):
скопировать код в буфер обмена
  1. curl_setopt($ch, CURLOPT_CURLOPT_FILE, "grab.txt");
так и не разобрался... Огорчение


Отредактировано модератором: Champion, 11 Июля, 2010 - 21:10:54
Не цитируй сам себя


-----
http://rulevoi[dot]net - запчасти для иномарок в Ижевске
 
 Top
Champion Супермодератор
Отправлено: 11 Июля, 2010 - 21:12:50
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




Не увидел отличий в новом и старом регулярном выражении... CURLOPT_CURLOPT_FILE - что за опция такая?
 
 Top
koka
Отправлено: 12 Июля, 2010 - 09:39:57
Post Id



Гость


Покинул форум
Сообщений всего: 115
Дата рег-ции: Июнь 2010  
Откуда: Россия, Ижевск


Помог: 1 раз(а)




Champion пишет:
Не увидел отличий в новом и старом регулярном выражении... CURLOPT_CURLOPT_FILE - что за опция такая?


Это у меня была опечатка, сам заметил и исправил.
Но всё равно не работает, выдаёт ту же ошибку.

По поводу регулярного выражения. Я добавил $m.
После этого, как ни странно, всё стало нормально выводиться......


-----
http://rulevoi[dot]net - запчасти для иномарок в Ижевске
 
 Top
clasik
Отправлено: 10 Сентября, 2010 - 02:31:35
Post Id


Новичок


Покинул форум
Сообщений всего: 1
Дата рег-ции: Нояб. 2010  
Откуда: Россия


Помог: 0 раз(а)




Перенесено из темы "Урок №17"
Угу а по другому его не как не получается писать
 
 Top
DlTA
Отправлено: 10 Октября, 2010 - 06:25:10
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2952
Дата рег-ции: Окт. 2010  


Помог: 53 раз(а)




Перенесено из темы "Урок №17"
EuGen пишет:
Старайтесь продумывать его так, чтобы его было легко масштабировать.

вот тут бы я хотел переспросить
КАК ОН ДОЛЖЕН ПИСАТЬСЯ чтобы был масштабируемым, и как не надо писать что бы не получилось наоборот?
 
 Top
alexsheva
Отправлено: 18 Января, 2011 - 12:49:54
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Янв. 2011  


Помог: 0 раз(а)




На странице Урок № 1 - Самые основы[dot] ошибка в комментах:
CODE (htmlphp):
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. $ARRAY = Array // числовой. Ключи 0,1 и 2
  4. (
  5. Array('Сыр','Колбаса') , // числовой. Ключами являются 0 и 1
  6. Array('key'=>'val' , 'key2'=>'val2') , // Ассоц. Ключи key и key2
  7. Array('key3'=>'val3', 'Чипсы') // Тоже Ассоц. Ключи key3 и 0
  8. );
  9.  
  10. // Для обращения к какому либо элементу многомерного массива, к примеру к val3
  11. // следует обращаться так:
  12. echo $ARRAY[2]['key3'];
  13. // В массиве ARRAY обращаемся сначала к элементу номер 2 [ Array('key3'=>'val3', 'Чипсы')  ]
  14. // а там к элементу с ключом key3
  15.  
  16.  
  17. $arr = array("somearray" => array(6 => 5, 13 => 9, "a" => 42));
  18. echo $arr["somearray"][6];    // 5
  19. echo $arr["somearray"][13];   // 9
  20. echo $arr["somearray"]["a"];  // 42
  21.  
  22. ?>


Строка 7: Array('key3'=>'val3', 'Чипсы') // Тоже Ассоц. Ключи key3 и 2
 
 Top
Мелкий Супермодератор
Отправлено: 18 Января, 2011 - 12:57:07
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




alexsheva пишет:
Строка 7: Array('key3'=>'val3', 'Чипсы') // Тоже Ассоц. Ключи key3 и 2

Не подтверждаю.
PHP:
скопировать код в буфер обмена
  1. var_dump($ARRAY = Array // числовой. Ключи 0,1 и 2
  2. (
  3. Array('Сыр','Колбаса') , // числовой. Ключами являются 0 и 1
  4. Array('key'=>'val' , 'key2'=>'val2') , // Ассоц. Ключи key и key2
  5. Array('key3'=>'val3', 'Чипсы') // Тоже Ассоц. Ключи key3 и 0
  6. ));

php пишет:
array(3) {
[0]=>
array(2) {
[0]=>
string(6) "Сыр"
[1]=>
string(14) "Колбаса"
}
[1]=>
array(2) {
["key"]=>
string(3) "val"
["key2"]=>
string(4) "val2"
}
[2]=>
array(2) {
["key3"]=>
string(4) "val3"
[0]=>
string(10) "Чипсы"
}
}


-----
PostgreSQL DBA
 
 Top
alexsheva
Отправлено: 18 Января, 2011 - 14:23:44
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Янв. 2011  


Помог: 0 раз(а)




Да! Все верно!
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. $ARRAY = Array // числовой. Ключи 0,1 и 2
  4. (
  5.  Array('Сыр','Колбаса') , // числовой. Ключами являются 0 и 1
  6.  Array('key'=>'val' , 'key2'=>'val2') , // Ассоц. Ключи key и key2
  7.  Array('key3'=>'val3', 'Чипсы') // Тоже Ассоц. Ключи key3 и 0
  8. );
  9.  
  10. // Для обращения к какому либо элементу многомерного массива, к примеру к val3
  11. // следует обращаться так:
  12. echo $ARRAY[2]['key3'];
  13. // В массиве ARRAY обращаемся сначала к элементу номер 2 [ Array('key3'=>'val3', 'Чипсы')  ]
  14. // а там к элементу с ключом key3
  15.  
  16. echo '<pre>';
  17. print_r($ARRAY) ;
  18. '</pre>'
  19.  
  20.  
  21. ?>

Возвращает результат
PHP:
скопировать код в буфер обмена
  1. (
  2.     [0] => Array
  3.         (
  4.             [0] => Сыр
  5.             [1] => Колбаса
  6.         )
  7.  
  8.     [1] => Array
  9.         (
  10.             [key] => val
  11.             [key2] => val2
  12.         )
  13.  
  14.     [2] => Array
  15.         (
  16.             [key3] => val3
  17.             [0] => Чипсы
  18.         )
  19.  
  20. )
  21.  

Отсюда наглядно видно, что обращаемся к объекту с индексом [2] многомерного массива. Для новичка, такого как я, это было не совсем понятно. Я посчитал, что элемент 'Чипсы' равен идентификатору [2]. По аналогии :
Array('Сыр','Колбаса') , // числовой. Ключами являются 0 и 1
посчитал Array('key3'=>'val3', 'Чипсы') 'Чипсы' числовой, идентификатор [2].
Спасибо!

(Отредактировано автором: 19 Января, 2011 - 13:39:52)

 
 Top
Страниц (11): В начало « ... 3 4 5 6 7 [8] 9 10 11 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Уроки php »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB