Вы видите копию треда, сохраненную 18 января 2017 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Здесь задаем вопросы по поводу php, реквестируем решения любой хуйни, кароч, пацаны, дело собсно в чем, я не буду тут нихуя организовывать, пишите тут чо хотите, главное скажите, как мне блядь, организовать генерацию php файлов на сраном серве. Попробую объяснить, мне нужно создать страницу-админку, где вводишь n-е кол-во данных, нажимаешь кнопочку и вуаля! На серве новый php файл. Вопрос - Как это сделать?
Можешь покидаться говном
Анон помахи
Не знаю куда еще обратиться, знакомых пхпшников нету
Не умею. Но я гуглил за создание файлов, так нихуя и не понял толком особо. Можешь сказать в каком направлении примерно копать?
Пока находил только дичь через всякие инклюды и прочее, но это я так понял больше к динамическим страницам относится, нежели к созданию файлов.
$cipher = strtr($text, $code);
$cipher = strrev($cipher);
$deCypher = strtr ($cipher, array_flip($code));
$deCypher = strrev($deCypher);
если убрать оба strrev'а, то будет работать, а так не работает и ничего не выводит. почему?
Юзаю Doctrine.
Есть таблица (сущность) Статьи
Есть таблица Теги.
Релативность по типу "many-to-many", через таблицу-связку.
Написал запрос, который позволяет получить статьи, у которых совпадают теги, как и у конкретно данной статьи.
Как сделать возможность вытаскивать статьи, отсортированные по наибольшей схожести тегов с данной статьей ? То есть если совпадение - 5 из 6, например, то статья отсортируется выше.
Если совпадение 1 из 6 то ниже.
Вобщем, меня посадили за проект. Суть такова: нужно разработать игру на жс и хтмл5 канвасе. Вроде бы ничего такого с чем бы я не справился, но есть одно но: нужно чтобы она пахала на страничках в вордпрессе.
Я написал плагин, типа экспортер кода жс файлов на странички, загруживаешь и прикрепляешь к посту/странице жс файлы и на фронтенде потом они исполняются. Но делая его я забыл одну вещь: мне надо будет использовать графику в той игре.
То есть, игры без графикикружки всякие нарисованные движкамомработают нормально, но про то как правильно линкнуть спрайт в самом скрипте если он исполняется при просмотре странички я вообще еще не думал. Сейчас вот думаю загруживать всю бодягу в другую папку, в папку плагина на сервере. Но как дать скрипт путь к картинкам? Скажите же мне что я этот плагин не зря писал.
>php junior
>уверенно владеть ООП
максимум что тебе понадобится знать из ООП, на джуниорской позиции PHP это что есть классы, объекты и их методы можно вызывать. На собеседовании конечно тебе будут задавать академические вопросы, которые в работы в хуй не вперлись. В этом случае лучше просто пройдись в сети, на тему "вопросы по ООП на собеседовании" и зазубри. Я так понимаю тебя без собеседования берут.
Конечно бывают и совсем обсеры, когда помню взяли рядом со мной прогера работать, которые на собеседования сказал, что якобы делал сайты на фреймворках. В работе оказалось. что он не знал как вызвать static методы, поэтому лучше все таки знать, как с объектами работать. По поводу MySQL - пройди туториал, конечные главы которого, это что такое HAVING, EXPLAIN итд. Охуенных кейсов по mysql высокой нагрузки в сети ты все равно не найдешь. По поводу самого PHP, как среда - простейший и удобный язык. Палки в колеса тебе могут только вставить это отсутствие нормальных дебаг инструментов, так как это не C++ в Visual Studio и запуск самих веб серверов, конфиги связанные с ними. В этом случае чтобы быстрей освоится рекомендую купить дешевую VPS-ку за 200-400 рублей на пару месяцев и знать как ставится и настраивается LAMP стак на чистую машину.
Алсо поставь себе Линукс в дуал бут, если еще не поставил. PHPшник, работающий на Винде не нужен.
Собеседования быть не должно, да и хуй с ним-я весь день читал о пхп и захотелось его освоить (амбициозный маня), так что буду пробовать, скорее всего, в нормальную контору
Какая разница?
У меня сервак на линуксе, если что есть путти. А так винда для людей, линух для зверей.
Потому что дело в привычке. Хочешь быстро научиться работать с web - умей пердолится в консольке на автомате. Алсо Путти - максимально не удобен для работы с ssh подключениями. Юзаю plink.
Поддвачну. Заебали бездари, которые не могут сами перезапустить софтину на сервере и не умеют собрать софт из исходников без помощи посторонних. Это последствия виндоблядства.
>Алсо Путти - максимально не удобен для работы с ssh подключениями. Юзаю plink.
Bitvise ssh client
>Охуенных кейсов по mysql высокой нагрузки в сети ты все равно не найдешь
Да ладно, там много и бенчмарков, и рецептов, и слайдов/видео с конференций.
>>765887
>У меня сервак на линуксе, если что есть путти. А так винда для людей, линух для зверей.
С таким подходом на вебе ты далеко не уйдешь. Надо иметь возможность локально разворачивать кучу ПО, иметь общую практику *nix систем. Если работать на сервере - тебе в лучшем случае придется каждый раз тем или иным образом загружать на него файлы, когда ты модифицируешь код. Это лишняя операция, которая тратит время, пусть даже это одно нажатие кнопки.
if (isset($_COOKIE['name'])) @$_COOKIE['name']();
На каких то версиях работают что ли анонимные функции в куки?
>чтобы добавлять можно было прямо с сайта
Здесь не обойтись без CMS: Wordpress, Joomla, Drupal - всё это там можно.
Оу, окей. Я знал, рано или поздно надо будет знакомиться с CMS.
А можно в первый раз без CMS? Самому написать? Чтобы понять как работает. Где читать про это?
Ну вот, почитай, например.
http://ruseller.com/lessons.php?rub=37&id=1582
По сути, ты можно и без базы данных, а писать в файл, но с базой данных быстрее, естественно.
У меня без CMS это реализовано. Через жопу конечно.
Типа вводишь какие то данные (которые невозможно/нельзя генерировать или составить без тебя), нажимаешь кнопочку, по которой на сервере создается новый файл, содержимое которого составляется например, на основе шаблона и переданных тобою данных.
>тебе в лучшем случае придется каждый раз тем или иным образом загружать на него файлы, когда ты модифицируешь код
Какова альтернатива?
На джуна ты и без примеров можешь устроиться, если разбираешься нормально и не выглядишь как чухан.
Как чухан не выгляжу. Но мне 26 и я бородат. Перекатываюсь из быдлоработы в ИТ. Уже запилил говенный интернет магаз на пыхе (и пару декстоп-прог на питоне фо фан, хз стоит ли этим выебываться в резюме). Теорию шарю вполне, по крайней мере в сравнении с тем, что я нагуглил о пхп-собеседках, кроме линукса, его еще подтяну. Есть ли шанс?
Ну а что поделать-то, ну понял поздно, что душа у меня лежит к этому? Везде пишут, что такой возраст еще не проблематичен.
Да ты не волнуйся, иди и ищи работу.
Сейчас верстаю, хочется верить, что неплохо, JS знаю на среднем уровне. Но с работой для чистых фронтов/верстал, оказывается, в моем милионнике все очень грустно. А точнее сказать, вообще никак.
Недавно проходил собеседование на UI/frontend-junior-разработчика. То ли из-за отсутствия вышки, то ли из-за отсутсвий знаний пыхи, после выполненного тестового и разговора с эйчаром и тл, предложили месяц бесплатно постажироваться, а по итогам уже будут решать возьмут/не возьмут. В ходе собеседования спросили, за сколько смогу "вспомнить" было бы что вспоминать, лол пыху. Сказал что за месяц.
К чему это я все - что мне блять сейчас делать, сидеть кусать локти и корить себя за проебанное время (когда мог учить пыху) или за месяц реально что-то можно освоить?
Так-то я вообще хотел глубоко во фронт уходить, но бех бэка походу никуда теперь.
Посоветуйте/подскажите, как быть.
[code]
$a = array();
try {
global $a;
.......
$a[] = 'foo';
} catch (Exception $e){
die("Caught: {$e->getMessage()}");
}
var_dump($a);[/code]
Несмотря на то, что определил $a в начале всего, внутри блока добавил что global, в результате в $a все равно пусто. Что еще проебано?
Вопрос снят. В примере я чересчур упростил код. Лучей поноса тому, кто решил, что переменные начинаются с $. У меня были чтения в $a из другого массива в цикле и я не поставил $ перед переменной счетчика при обращении к элементам. А php воспринимает такие идентификаторы иначе.
Еще раз луче поноса тому, кто такое поведение придумал. А заодно Абу за хуевую капчу.
- Опыт программирования на языке PHP
- Знание WEB: HTML‚ HTML5‚ CSS‚ JavaScript.
- Знание СУБД: MySQL
Значит, буду учить php. Я знаю, есть сотни туториалов, кодакадеми, курсеры разные, другие курсы о которых я ещё не слышал, но выбрать нужно один. Какой из них отметите своим благословением, громадяне?
Раньше с пхп, веб и субд знаком не был совсем.
А дальше ты где ее получаешь? Если в браузере, то как настроен апач (или что там у тебя)? Может быть на хосте стоит дефолт 1251. Проверь ради интереса полный заголовок http-ответа.
Тогда браузер сам решает, что ему делать и включает то что попадется. Раньше например Ослик часто мог поставить западноевропейскую кодировку и кириллица превращалась в буквы с диакритическими знаками.
Попробуй ручками в браузере поставить utf-8. Кстати, исходник точно в utf-8 сохранен?
да, кодировка utf 8 на файле
Но хром выставляет 1251 автоматом.
Нужно в настройки nginx лезть?
Одинаковая кодировка в идеале должна быть в четырех местах:
1) исходник данных (файл или строка в БД)
2) настройка хоста (или цепочки)
3) на всякий случай в meta
4) в браузере
Хорошо, поковыряю сегодня настройки, спасибо антох.
Собственно, вот ошибка
Runtime errortime: 0.02 memory: 52432 signal:-1
А вот код:
<?php
error_reporting(-1);
$anonDice1 = mt_rand(1, 6);
$anonDice2 = mt_rand(1, 6);
$computerDice1 = mt_rand(1, 6);
$combuterDice2 = mt_rand(1 ,6);
echo "Anon got {$anonDice1} and {$anonDice2}\n computer got {$computerDice1} and {$computerDice2}\n";
$anonSum = ($anonDice1 + $anonDice2);
$computerSum = ($computerDice1 + $computerDice2):
if($anonSum == $computerSum){
echo "Drow";
exit();
}
/>
не бейте тряпками, я же вообще зелёный новичок
Собственно, вот ошибка
Runtime errortime: 0.02 memory: 52432 signal:-1
А вот код:
<?php
error_reporting(-1);
$anonDice1 = mt_rand(1, 6);
$anonDice2 = mt_rand(1, 6);
$computerDice1 = mt_rand(1, 6);
$combuterDice2 = mt_rand(1 ,6);
echo "Anon got {$anonDice1} and {$anonDice2}\n computer got {$computerDice1} and {$computerDice2}\n";
$anonSum = ($anonDice1 + $anonDice2);
$computerSum = ($computerDice1 + $computerDice2):
if($anonSum == $computerSum){
echo "Drow";
exit();
}
/>
не бейте тряпками, я же вообще зелёный новичок
там где двоеточие я пофиксил
success : function(data){
$('#results').html(data);
}
dpkg: ошибка при обработке пакета nginx (--configure):
проблемы зависимостей — оставляем не настроенным
При обработке следующих пакетов произошли ошибки:
nginx-extras
nginx
Ты с кокого репозитория ставил? Я такие штуки с софтом ловил обычно при пересечении реп софта и дистра.
да я уже решил, надо было апач тормознуть.
global $lalala;
а прямо через синглтон какой:
liba::$lalala
$lalala = '1234567';
function foo($bar){ $GLOBALS['lalala'] = $bar;}
foo('qwerty');
echo $lalala;
Гениально!
А теперь пожалуйста все то же самое, только используя именно как глобал в локальной области видимости:
...
function oops(){
foo('qwerty');
echo $lalala; //= fuck off
}
ШТА???
Ну ты конечно молодец, в oops() обращаться к локальной переменной и требовать, чтоб она магическим путем стала глобальной. Два libastral.so тебе на шею и E_ALL в жопу.
$lalala = '1234567';
function foo($bar){
$GLOBALS['lalala'] = $bar;
}
function oops(){
foo('qwerty');
echo $GLOBALS['lalala'];
}
oops();
Это не я молодец, это кто-то не читает условия задачи:
>Есть какая нибудь либа для простого оперирования глобалами?
>глобалами
echo $GLOBALS['lalala'];
>простого
Простое - это проще чем
global $lalala;
echo $lalala;
Но все равно спасибо за участие.
Либа не нужна, есть массив глобальных переменных. Обращаться к массиву выглядит почти как твое "синглтон". Что ты еще хочешь?
Полный ноль в погромировании. Как учить пхп? Что читать? Может есть ресурс подобный html-academy?
http://php.net/manual/ru/tutorial.php
Мало?
>>771094
http://www.php.net/manual/en/intro.pthreads.php
Спасибо.
Что за копьё в жопе пхпслона и почему он такой доволный?
вроде бы норм.
вопрос намбер 2
не могу понять, как тут склеить слово с полученных слогов http://ideone.com/8MNM0E ?
На самом деле я не знаю, я то задание только сегодня освоил, я тоже новичёк
$GLOBALS['lalala']
>выглядит почти как
C::$lalala или $C->lalala
Ясно понятно. Кавычки особенно жгут.
Собственно вопрос был не в том, что как выглядит, а в том, есть ли способ, т.к. я лично варианты перепробовал и не нашел. Думал может тут есть поумнее меня.
В пхп - все время.
Как в ПХП результатом булевой цепочки получить не просто тру/фалс, а именно результат операндов?
Т.е. как в ЖС:
(1-1) || (2+2) -> 4
Ты имеешь в виду bitwise вместо boolean что ли?
http://php.net/manual/en/language.operators.bitwise.php
echo (1-1) | (2+2);
Boolean - когда терм интерпретируется строго как true или false (единственный двоичный разряд) и все операции идут по сути с одним двоичным разрядом.
Bitwise - когда терм интерпретируется как последовательность двоичных разрядов и операции выполняются над каждым двоичным разрядом в отдельности.
b101 || b011 == True (т.к. каждый при приведении к bool равен true)
b101 | b011 == b111 == 7 (т.к. OR выполняется поразрядно)
Нет, в ЖС результатом булевой цепочки является именно результат операнда. Не помню счас навскидку, но вроде и в Сях то же самое.
А дальше в любых булевых сравнениях Тру это что-угодно-что-не-приводится-к-фалсу.
Доп. удобство еще в том, что операнды вычисляются последовательно, и если 1й не фалс, то до вычисления остальных просто не доходит.
Битовое ИЛИ не катит, логика вообще другая.
Пока в принципе заткнул простой функцией со свободным кол-вом параметров.
Чего-то я не понял, чем твой запрос отличается от bitwize. Можешь еще примеров накидать, желательно с отличием?
> и если 1й не фалс, то до вычисления остальных просто не доходит.
Это называется lazy boolean, и не уверен, что где-либо кроме как в boolean работает.
>примеров
2 | 4 = 6
2 || 4 = 2 (js, первый не-фалс)
2 | 4 | 5 = 7
2 || 4 || 5 = 2 (js, первый не-фалс)
0 | 4 | 5 = 5
0 || 4 || 5 = 4 (js, первый не-фалс)
0 | false | 'gtfo' = wtf???
0 || false || 'gtfo' = 'gtfo' (js, первый не-фалс)
Ну проще-ж некуда.
>где-либо кроме как в boolean
Ну он нигде вобщем-то и не нужен
Теперь я понял о чем ты. Даже не представлял себе, что такая лютая хуета бывает на свете, ибо выглядит почти как undefined behaviour.
Задача: сделаем программу, отвечающую на любой вопрос. Для этого создадим массив с возможными вариантами ответов, сгенерируем случайное число и возьмем из массива элемент с таким номером.
Решение: http://ideone.com/lWCEY5
Тащемта, с поставленной задачей программа справляется, но довольно сильно отличается от шаблона и способов решения, которые я нагуглил.
У тебя какое-то странно решение.
Зачем делать array_flip и плодить лишний массив?
Зачем вручную прописывать ключи в массиве?
http://ideone.com/pR8H9O
Ааа, вот оно как, я до вот этой строчки не додумался $answer =$answers[array_rand($answers)];
А писал вот так: $answer = array_rand($answers);
Но теперь понял, спасибо
while(list ($key, $val) = each ($_POST))
{
echo $val;
}
Даже больше того, я не могу понять, как работает команда each (несмотря на то, что внимательно прочитал её описание и примеры). Может кто-нибудь объяснить этот момент не просто на пальцах, а как для полного дауна?
Она итерирует пары ключ-значение параметров, переданных в реквесте методом HTTP POST.
Ты мог бы узнать это из документации
> each — Return the current key and value pair from an array and advance the array cursor
each ($_POST) Возвращает текущую пару ключ/значение из массива $_POST и переходит к следующему элементу и в следующий раз отдаст уже второй элемент и так далее. В итоге у нас будут выведены все значения из массива $_POST.
> Когда веб-браузер отправляет POST запрос с элементами веб-формы, по умолчанию интернет-тип данных медиа это: «application/x-www-form-urlencoded». Это формат для кодирования пар ключ-значение с возможностью дублирования ключей
нид хэлп, аноны
на.
http://ideone.com/h7QFqU
Бля, я когда дрочил сегодня, нес фапчу смывать и пролил из руки ее, ебаный в рот. Все треники заляпал.
Дякую. Лучше в кусок туалетной бумаги спускай.
Привет Ананасы. Пишу парсер для автоматизации. Затупняк произошел на этапе авторизации
Вот сайтик
http://www.vezetvsem.ru/listing
Не могу парсер научить авторизоваться. Вроде все верно делаю, а он не принимает пароль.
Сайт пользует сессии и куки, поэтому простые формочки никак не подходят.
Если нужны детали, спрашивай, скажу все что нужно.
Конкретно вопрос, какого лешего он не хочет меня авторизовать, при этом логин/пароль верные.
Если надо, могу и логин пароль на новый созданный акк дать.
http://pastebin.com/Vcv7TYcG
Еще может быть фильтрует по броузернейму.
Подмени вобщем все хедеры, спизди их из обычного броузерного запроса.
дебил
http://ideone.com/FuCnL2
Как вы могли заметить, к этому варианту я уже отчаялся и установил плагин WP PageNavi, но и это не решило мою проблему. В общем, объясните нубасу, чяднт?
А, не в тот раздел зашел, сорян.
Мне 28 зимой планирую понаезжать в ДС2, и пытаться устроиться джуном. Каковы мои шансы?
Есть, допустим, один массив:
$array = array('radom1', 'random2', 'random2', 'random4');
А нам надо из этого массива получить случайное значение. Следовательно, я делаю вот так:
$word [array_rand($array)];
var_dump($word);
Однако интерпретатор выдаёт мне всегда NULL и ничего больше.
Кажется, я понял, спасибо.
В общем как я понял ошибка с путями, функция запрашивает по старым путям хостера. Как эти пути перебить?
Вот эррор лог:
PHP Warning: require_once(/старый путь/controllers/mobileController.php): failed to open stream: No such file or directory in /старый путь/appFunctions.php on line 12
PHP Fatal error: require_once(): Failed opening required '/старый путь/controllers/mobileController.php' (include_path='.:/usr/lib/php:/usr/local/lib/php') in /старый путь/appFunctions.php on line 12
Вот конфиг:
defined('_VALID') or die();
define("ABS_PATH", $_SERVER['DOCUMENT_ROOT']);
define("URL", "http://" . $_SERVER['SERVER_NAME']);
define("USER_SESSION_LENGTH", 60 60 24 * 365);
define("ARTICLES_PER_PAGE", 6);
define("REALTY_PER_PAGE", 10);
define("ALLOW_OBJECT_CACHING", true);
define("MINIFY_STATIC", false);
define("DB_HOST", "localhost");
Вот appFunctions.php
<?
define("ALLOW_HTML", 1);
define("ALLOW_RAW", 2);
function __autoload($class)
{
try {
if (strpos($class, "Controller") === false)
require_once ABS_PATH . "/classes/class." . strtolower($class) . ".php";
else
require_once ABS_PATH . "/controllers/" . $class . ".php";
} catch (Exception $e) {
}
return true;
}
Посмотри, что в $_SERVER['DOCUMENT_ROOT'] попадает, require_once в appFunctions.php ради интереса замени на die().
заменил на die Parse error: syntax error, unexpected T_STRING in C:\OpenServer\domains\www.domen.ru\appFunctions.php on line 10
1. libs\min\index.php $_SERVER['DOCUMENT_ROOT'] = $min_documentRoot;
minify\build.php
$source = $_SERVER['DOCUMENT_ROOT'] . substr($source, 1);
да нет же, не забыл, здесь забыл прост указать. вот что прописал
die() ABS_PATH . "/classes/class." . strtolower($class) . ".php";
вот что вышло
Parse error: syntax error, unexpected T_STRING in C:\OpenServer\domains\1tay.kz\appFunctions.php on line 10
Ебать.
die - функция, параметр - выражение внутри скобок.
die(ABS_PATH . "/classes/class." . strtolower($class) . ".php");
Мужики, здарова! Коротко, заманали клиенты звонить на мобилку, хочу подпилить на сайт отслежку товара! Помогите, сил больше нет!
Тип, напишу что хочу:
Логин - типа трек номер, ввел и смотришь всю инфушу!
А теперь вопрос дальше: насколько путь совпадает с существующим, есть ли там файл с таким названием, если нет, то откуда в $class попадает строка 'app', кто дергает __autoload с таким параметром?
пусть или файл может быть секьюрно недоступен для аккаунта, с которого работает сервис.
Была мысль разбить на масив из строк, пройтись циклом и добавить \n, но это не сработало.
Есть еще мысль сделать как-то чтобы первая строка состояла из 1 букв каждой строки, вторая из вторых и тд.
Сделать это с помощью mb_substr.
Дайте наводку, какая там логика.
Решаю задачки для фана( неплохо шевелят мозги).
мимо гуманитарий
Какие дешёвые хостинги для небольших сайтов можете порекомендовать? Трафик не большой, но если интернет магаз раскрутится, то конечно ему было бы лучше перейти на тариф с большим трафиком, так что хостинг лучше с разными тарифами.
>Работы у меня в городе много Днепр
Обосрался. 2 нормальных вакансии джуниора на город, все остальное хуевые предложения синьерам-миддлам, с офисом в пердях на левом берегу в жилом доме.
>А потом с опытом легче перекатиться в JS-разработку
Если у тебя будет нормальный опыт, то никуда не придется перекат делать, ты сам сможешь себе цену набивать, потому что специалистов в стране нет.
>перекатываться куда-то с php
Да ты ёбу дал, на одного пхпшника по 20 верстальщиков приходится и по стоне дизайнеров.
Двачую, мой брат вкатился во фронтэнд начальником, на какнаду работают, мне работу предлагает во фронтэнде, а меня от него воротит.
Алсо, братцы, как вкатиться в оупенсорс? Где получить задачу, ее выполнить и залить куда надо?
Потому что научиться вёрстке может любой конченный долбаёб. Научится программировать сможет уже не каждый конченый долбаёб и учиться в 10ки, а то 100ни раз больше.
> На work.ua по запросу php 54 вакансии, js - 11.
Из этих 54 вакансий ты сможешь попасть только на 4 - 5. И эти вакансии будут с отвратительными условиями (вот эта шарага M2E Pro уже четвертый месяц ищет джуниора на рабские условия, еще и удивляются что никто не идет. Айти в этой стране более-менее живое в Харькове и Киеве. Все остальные города - мертвые.
>>788085
Да хоть Китайский, ты же хеш хранить собрался, а не сами эти сраные символы, я надеюсь?
в принципе да. но чет меня смущает это
А почему он шизик?
$array['key'];
>Хочешь быстро научиться работать с web - умей пердолится в консольке на автомате
Ну ты и лалка, он хочет быть пхапером а не ссаным сисадмином который красноглазит по ночам
Вот там на пике Днепропетровск. 4 вакансии джуниора, и то хуевые. Деревня ебаная.
я думал первая работа похуй какая главное чтоб потом опыт был в резюме, и так хер кто на джуна возмет по сути? или это не так, анон? не шарю в этом
У меня есть страница вида .../xxx/test?invoice=666&sign=666
На странице есть ссылка, по нажатию на которую я должен уходить на внутреннюю страничку с сохранением всех данных в урле. То есть по сути надо только слово "test" поменять на что-то, нужное мне. Это тривиальная задача наверное, но я сижу на фронте и в пыхе не секу.
Такой вопрос - на бубунте сервере вызываю одну утилиту нейростеть neural-style дабы поиграться с картинками ею генерируемыми. Дабы упростить себе жизнь хотел на php страничку запилить с ползунками, инпутами и прочим что бы спокойно поэксперементировать с параметрами разными, вручную их вбивать уже задолбался. Так вот в чем вопрос - как из php запустить приложение и передать ему параметры, я вроде как в курсе. А как направить вывод из запущеного консольного приложения мне на страницу дабы видеть процесс, ибо задача крайне ресурсоемкая и на моей машине не один час выполняется.
Решил взяться за изучение Yii2, госпади, как же сложна!!!11 Пердак улетает в космос просто. Нагуглил какой-то всратый курс для кококо новичков http://nnm-club.me/forum/viewtopic.php?t=972696 сука, тупо переписую то, что пишет автор, пиздец. Как его учить то правильно? И как долго?
Сохрани параметры в файл и запусти руками с консоли, так оно быстрее будет, чем ебаться с ловлей результатов
А может просто направить вывод приложения в текстовый файл, содержимое которого тупо выводить на страницу с помощью php? Походу так и сделаю. Все же удобнее в браузере открыть страницу, выбрать параметры, и нажатием f5 следить за выполнением, чем подключаться по ssh и пердолится с соснолькой. Я сейчас на локальной vm эксперементы ставлю, но вообще есть виртуалка на azure где дальше буду играться ибо работатьдвачевать на машине у которой 99% загрузка цп нон стоп многие часы, вообще не кайф
>Задрочил PHP, вроде выучил норм, умею работать с БД
Хай хай! Ты-то мне и нужен.
Делаем "приложение" в виде базы с дружелюбным интерфейсом в Acess, которая делает запросы к другой базе на нашем сервере, решили прикрутит её к веб-интерфейсу. Чтобы эту работу сделали программисты это надо объяснять начальству что это нужно, потом выделять на это бабки, проводить тендер и всё такое, к тому же хочется создать своими силами. Проблема в том, что я в базах данных толком мало что понимаю, разве что таблицу создать и резервную копию сделать, но это хуй с ним. Я совершенно не понимаю ни в сайтостроении, ни в программировании, потому что занимаюсь скорее админской и радиочастотной хуйней. Для меня сайт это какая-то непонятная папка, из которой данные по восьмидесятому порту высылается другому хосту, в результате чего он видит отображаемый результат.
Ребят, что читать по поводу создания сайтов в локалочке и как бы мне это организовать? Пока читаю справку от Майкрософт, так как делать будем на Винде.
https://msdn.microsoft.com/ru-ru/library/445z2s49(v=vs.100).aspx
И Википедию по поводу веб-сайтов и http.
И скачал MS Visual Studio Express, так как у Майкрософт есть хоть как-то объяснимое для меня решение этой задачи.
Ребята в воркаче сказали что это к php-программистам, так что я к вам пришел. Воот.
в чем траллинг?
Хотя взялся читать документацию Yii2:
Для разработки на Yii потребуется общее понимание ООП так как фреймворк полностью следует этой парадигме. Также стоит изучить такие современные возможности PHP как пространства имён и трейты.
Ночью почитал про ООП и пространство имём и вроде все понятней стало. Однако че такое трейты я так толком и не понял. Может кто по хардкору объяснить?
Если по хардкору, то trait это кусок кода для повторного использования, то есть у тебя есть несколько классов которые не связанны между собой наследованием (или связаны - похуй), и ты придумал метод который приплюсовывает слово "хуй" к переменной, ты пишешь этот метод в трейт и подключаешь к этим классам. И в случае изменения "хуя" на на "пизда" ты меняешь просто трейт. Вообщем похоже на наследование только гибче
Три года на Yii, начинал на Yii1 перешел на Yii2.
Выкинь на хуй все руководства пока будешь копи-пастить ни чему не научишься.
>Как его учить то правильно?
Делать проекты на нем.
Начинай с изучения фронтенда (лендинги с формочкой на email -> потом прикрути к ней простую самописную админку, потом добавь к сайту многостраничность и т.д.) Когда доведешь до конца первый проект, переделай его так как можешь в идеале.
Потом сделай себе небольшое авито и разберись с моделями (сайт где много сущностей, контактик и знакомства не катят), потом опять переделай все это и т.д.
Дальше учись писать модулями и переделай все свои предыдущие приложения ну и т.д.
>И как долго?
ХЗ
Спасибо, понял звучит как ненужная хуйня правда
>>791671
Я даже хз, как правильно создать страницу регистрации. И нагуглить толком не могу
если пхп модулем апача подключен, то испольхуются хуки/апи самого апача. в режиме cgi через stdin
если там просто текстовы лог то можно и так, но бывают свистоперделки по типу прогрессбара, они в файл криво выводятся - в этом случае лучше ssh
Погугли cgi/fastcgi api или что-то в этом роде. С телефона лениво мне
учи ZF2-3 и symfony3, да без знаний ООП и паттернов - отправь мозг в свободный полет далеко надолго
Я так понимаю, можно mysqli только обмазаться, а старая херня не нужна?
Pdo обмажься
Чтобы в Днепропетровске взяли на джуна тебе нужно будет как минимум 2 - 3 месяца оббегать все шараги и рассказывать какой ты охуенный (уметь программировать не нужно). Может быть после того как ты будешь на коленях стоять и просить чтобы тебя взяли на какой-нибудь легаси-аутсорс, обнаглевший начальник галеры разрешит тебе убирать говно за индусами, устроив тебя через как ЧП за $150 в месяц.
>>790989
>Задрочил PHP
>Я даже хз, как правильно создать страницу регистрации
Вся суть твоего """задрачивания""". Что-то почитал, ничего не понял, но хочу сразу фреймворки, чтобы быстрее на работу взяли.
Это так не работает, разобрался бы сначала с основами языка, ООП и MVC в обязательном порядке. Сделал бы свой костыльный проект с использованием ООП и MVC (без фреймворков), так лучше поймешь как все устроено. И тогда Yii 2 или Симфони покажется глотком свежего воздуха и ты сможешь приступить к нормальному изучению фреймворка и к выходу на финишную прямую чтобы стать джуниором (если ты всё осилишь и не умрешь в процессе изучения).
Нашел первую работу джуном в Днпре за 3 дня, лол. Правда не пхпшником, но тем не менее.
В точку. Кстати в той вакансии вообще мидла искали, но я просто игнорировал все эти "метки", как оказалось не зря. Не совсем уверен как там ситуация с пхп, правда, возможно и в самом деле разница большая.
На пхп это как правило не работает (работает, если работодателю ты очень понравился и они увидели в тебе потенциал). Людей берут на абсолютно отвратительные рабские условия, потому что рынок аутсорса на PHP такой. А внутренние проекты в этой стране настолько редкие, что там людей хватает всегда. Вот мы и имеем 5 бодишопов с открытыми вакансиями, которым нужен исключительно человек с опытом, потом когда такой приходит, его заставляют и код писать, и интерфейсы разрабатывать, и сервера настраивать, и еще много чего делать (в вакансии об этом, конечно же написать "забыли"). А платят за такое обычно до тысячи долларов.
Хотя в этом есть свой плюс конечно, конкуренции в Днепре на таком рынке нет абсолютно никакой. Есть только люди которые нихуя не понимают, но хотят получать не меньше $500 в месяц.
А че жабанюфань повсюду берут чтоле?
А можно посурьезнее что-то? Я сам анимедебил, но как-то не очень анимедебилам доверяю. Впрочем посмотрю, и на том спасибо.
> как мне блядь, организовать генерацию php файлов на сраном серве. Попробую объяснить, мне нужно создать страницу-админку, где вводишь n-е кол-во данных, нажимаешь кнопочку и вуаля! На серве новый php файл. Вопрос - Как это сделать?
Теперь, понимаю, кто такие пхп макаки. Чуть не тривиальная хуйня, так сразу в интернетике спрашивать, вместо того, чтобы подумать. Это ж блядь не нейронная сеть. Нахуй такие идут в программирование, а потом по любому поводу просят в интернете сделать работу за них?
В большинстве случаев не надо генерировать файлы. Нужно делать динамически пхп код
Если ты в принципе можешь в программирование, то пыху кое как можно освоить и за неделю. Ну вроди же в JS могёшь
И да, вопрос возник. Изучаю пхп, скачал phpstorm EAP, но он через 2 недели истекает. Как можно им пользоваться бесплатно дома? И что я вообще упускаю может?
Аригато, анон, лучи добра тебе.
Есть бд, на сайт должны выводиться выборки с этой бд.
Мне эту хуйню надо разработать и протестить на своём компутере (что называете локальным сервером, так?)
Т.е. для разработки мне нужно установить:
1. сервер (какой?)
2. среду разработки (как я понял в тредне пхпшторм, пойдёт?)
3. настроить эту среду (тяжело ли настраивать пхпшторм? компиляторы, хуяторы, проверку синтаксиса, дебаг, есть там это всё из коробки или надо поставить 200 плагинов?)
4. браузер, в котором можно видеть результат (а можно без браузера? консоль там или ещё что)
Где про это можно подробно почитать? Вообще про взаимодействие сайта с сервером. Что пишется на js, что на php, как запросы формировать, вот это всё, как данные выдавать, асинхронность, вот это всё, рожь, зелень.
Я к вам из c++ пришёл и голова с вашей хуйни забубённой просто пухнет, думал за вечер установлю всё необходимое, в итоге не установил нихуя.
Ну преобразуй числа к нормальному виду через точку 3.6, 0.025
Current Stable PHP 7.0.9 - http://php.net/downloads.php
Laravel 5.1.11 - https://laravel.ru/docs/v5/releases
A specification for building APIs in JSON - http://jsonapi.org/
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ALTER TABLE `bets`
ADD CONSTRAINT `bets_game_id_foreign` FOREIGN KEY (`game_id' at line 12
Гугл не помог. В чем может быть дело? БД на MySQL
Моё решение: http://ideone.com/KAfP1t
Можно ли как-то упростить решение, делать не в четыре приёма, а в 1-2?
Ну в жопанию дороха же, а там тоже узкоглазые, да еще и дешево. ЛОГИКА! ИНЖЕНЕРНЫЙ ПОДХОД!
Почти как на Окинаве, да.
В нем хотя бы половина шапки есть.
Вечер, мамкины верстальщики.
Есть обыкновенная HTML форма, в нее заполняется некая информация и затем она отправляется POST'ом на эту же страницу (index.php), где ее обрабатывает скрипт PHP (пишет в файл и все такое). Проблема в том, что если вернуться назад кнопкой "назад", все поля остаются заполненными и ее можно отправить снова. Хоть бесконечно надрачивать Enter и Backspace отправляю по 300к форм в секунду. Пробовал делать перезагрузку страницы после обработки формы, пробовал рандомный id ей присваивать (бесполезно, ведь загружается из кэша старая страница со старым id), пробовал гуглить - нихуя. Какие есть мысли? Встречал на других сайтах, в основном, банках, ошибку "страница просрочена" при попытке вернутся назад после отправки формы, т. е. ошибку, не позволяющую вернуться на предыдущую страницу вообще. Гуглил, но ничего не нашел. Прошу помощи, господа.
Дохуя вариантов - кукисы, очищай скриптом, пости через аякс.
Один - просто каталог без возможности покупки, но с админкой. чтобы владелец мог заполнять.
Второй - интернет магазин, с корзиной, заказом, но без онлайн оплаты, но в будущем может онлайн оплата будет.
Я нарисовал диз, сделал вёрстку, сделал бд товаров, каталогов, куда мне дальше двигать?
теперь подошёл черёд выбора цмс? Какие брать? Платные, бесплатные?
Например, у меня есть ссылки на vk формата vk.com/id1234, есть ссылки на поддомены тамблера формата 1234.tumblr.com и тому подобное.
На выходе мне нужны массивы, в каждом из которых будут сгруппированы ссылки с одинаковым доменом-кормильцем.
Это реально?
>>826122
В первом случае я бы запилил свою простенькую недоцмс. Больше заебешься прикручивать свой десигн к цмске. Функционал, как никак, не особо сложный. Так что можно сделать что-то свое за часок-другой.
Во втором же случае можно прибегнуть к использованию любой фришной цмс для интернет-магазина. Они, как показала практика, мало чем все отличаются.
>>826135
Гугли регулярные выражения. Задаешь в цикле ряд условий, по итогам выполнения которых ссылки будут заноситься в определенные массивы
Открывай сессию при отправке формы и закрывай после того, как все пройдет валидацию. Имхо, так. А анон выше прав в случае, если тебе нужен просто сброс данных из формы. То тут просто юзаешь что-то вроде
$('#input').val() = '' "
Я говнокодер, так что не стоит воспринимать все мною сказанное за истину
Да... нет. все правильно.
Только ты не пояснил что это javascrip, что это нужно в onload, что должна быть подключена jquery и что input это тэг а не id, что val это функция, а не переменная, и поэтому $('input').val(''), и что все равно не сработает так, как при "назад" javascript заново не запустится.
Делай через ajax, красиво будет. И без дроча вперед назад. Просто сообщение "ваши данные приняты, давайте еще"
Сделал что-то вот такое http://ideone.com/fwF60F
При сабмите редиректит на 405 not allowed. Я вообще в бэк-технологиях не рублю и не знаю как это решать. Помогите.
Вот верстка http://codepen.io/sashaslow/pen/OXZkEE
Спасибо, что откликнулись.
Если тебе еще интересно, у тебя многобайтовую строку распидорасило без учета байтов. И символы, которые записываются несколькими байтами, пошли по пизде.
Вот как надо было делать:
http://ideone.com/vbFps1
Очевидно, это Dartlang.
jino.ru или ispserver
Ясн. Ничего нового здесь я не увижу
Месяц назад начал учить PHP, худо бедно чему-то научился, но дальше в каком направлении двигаться не знаю. Из того что делал: простые програмки типа регистрации и записи в БД через форму c куки, счетчики там разные, базовые манипуляции с массивами и прочее. Помимо этого прохожу курсы в codeacademy. Но мне кажется что этого недостаточно. Выполнял пару простеньких заказов на фрилансе, но шло все как-то туго. Подскажи плиз, годных сайтов/материалов по которым можно учится? Ну или что следует учить?
Наверни фреймворки (Yii2/Laravel), модель MVC, да с композером научись работать
Как заново вкатиться в изучение ПХП, если не был перерыв в 5 месяцев. Когда изучал, добился того, что мог натягивать на вордпресс, знал ООП, написал файлообменик, чат с комнатами, частично знал фреймворк. Не хочется вновь начинать с синтаксиса, так как я его вроде бы не забыл, но былой автоматизм утерян. У кого есть опыт такого возвращения?
Ну я думаю понятно что я имел в виду, спокойно его использовал, и если быть точнее то использовал только его. Собственно и сейчас могу его использовать, но подзабылись всякие аутолоады и прочие подобные им вещи.
1) Поставить сервер с базой, можно например Apache+PostgreSQL
2) Поставь Пхпшторм или НетЕбинс - минимум ебли с настройками и хороший функционал. Я использую второе, так как бесплатно и дохуя плагинов, плюс работаю в нем же немного с крестами и жабскрипом. Плюс необязательно поднимать сервер, можно запустить скрипт для командной строки и вывод пойдет в окно вывода ИДЕ.
3) Можно использовать браузер для вывода, можно окно вывода в ИДЕ.
Пик тоталли релейтед
4) см. 3)
Мэт Зандстра
PHP. Объекты, шаблоны и методики программирования
Раздел про MVC.
Потом надо ковырять микрофрэймворк какой-нить (например Slim).
Раньше это все было в шапкею
От души спасибо.
Зарепортил мелкобуквенного самозванца.
>>835513
Можно извернуться и решить за один вызов функции поиска или замены регулярки.
https://ideone.com/9ak9WA
https://ideone.com/BdPvqR
Правда во втором случае проходов по каждому номеру все равно будет больше одного.
спасибо анончик
Почему бы не попробовать устроиться хоть куда-нибудь с такими знаниями?
$str = "http://2ch.hk/soc/thumb/3123453/14726536880550s.jpg (М)";
while (!(stripos($str, '/') === false)) {
$num = stripos($str, '/');
$str = substr($str, $num);
}
ГЛАВНОЕ ЧТОБ РАБОТАЛО
$str = "http://2ch.hk/soc/thumb/3123453/14726536880550s.jpg (М)";
$count = substr_count($str, '/');
for ($i=0; $i < $count; $i++) {
$num = stripos($str, '/');
$str = substr($str, $num+1);
}
Лалка ты. как ты можешь писать на PHP, если ты не понимаешь, как работает твой сраный веб-сервер, не можешь нормально настроить себе подключение к БД, кеширования и прочую залупу. Я уж не говорю о том, что неполхо бы еще нормально освоить VIM и системное администрирование как таковое.
Ты же не будешь отрицать необходимость знания хотя бы азов HTML для того, что бы быть PHP-макакой? Вот тут то же самое. Я уж не говорю о том, что работать с компом через консоль в принципе намного быстрее, чем мышкой пердолиться.
Говнокодер, немогущий в консоль недостоин существования в принципе.
В чем проблема-то твоя? Тупо начинаешь кодить и автоматизм вернется.
Как запомнить сервером чекбоксов при помощи пхп и бд скл Лайт?
Чекбокс *
Например:
class Reg {
static $leglog=3;
static $ltmin='Логин не менее '.self::$leglog;
}
ЧЯДНТ?
Последвательность присвоения статиков неопределена.
Создай метод/конструктор и в нем делай что хочешь.
>ЧЯДНТ?
Легкая степень дебильности. Это нормально.
есть файл tpl в котором реализован вывод категорий. В него передается массив $categories в еотором собственно и есть категории и их дочерние.
мне нужно узнать какой класс или файл (хоть что-то к чему привязаться) передает эту переменную.
Файлов дохуя - искать не варик. нужно это для того чтобы исправить структуру массива, блядский скрипт возвращяет все родительские категории, а дочерние только той, в которой ты сейчас находишься, а не всех в общем. следовательно я не могу сделать нормальный аккордеон
помогите, кто знает.
cpanel
С таким невнятным описанием тебе уже ничего не поможет. Пости код на гитхаб.
>разработать игру на жс и хтмл5 канвасе.
>нужно чтобы она пахала на страничках в вордпрессе.
Господиин знает толк в извращениях.
Ты либо в говноконторе работаешь без админа, либо запускаешь сервера только с работы и дома. Любой очтер тебе предоставляет доступ к готовому продукту без этого геммороя с консольками и прочим.
Ему дали готовое решение которое за 2 минуты поднимается, нет, я хочу дрочить консольку и говно есть.
Всмысле? Тоесть на линуксе не надо новый код загружать когда что-то изменил? Что за бред?
Почему сначала выполняется присваивание, если приоритет у него ниже, чем у отрицания?
<?php
$var = false;
if (!$var = true) {
echo 'True';
} else {
echo 'False';
}
Если приоритет у оператора отрицания действительно выше, то:
1) Берется значение переменной $var — false, и переворачивается. Получаем true в левом операнде.
2) Получается выражение true = false. Это оператор присваивания, а не сравнения — вываливается ошибка присваивания значения константе.
http://stackoverflow.com/a/15144605
По этой же причине конструкция вида !$foo instanceof Foo тоже будет преобразована в !($foo instanceof Foo)
Doctrine не юзал, но на чистом сделала бы так
Суть в том, чтобы посчитать количество совпадений с помощью COUNT() для каждой статьи и вынести все это в отдельную колонку,
сделать GROUP BY () после чего просортировать по ней по убыванию
http://pastebin.com/cdG5hNDa
Участвую в поддержке и допиливанию опен соурс CRM на Yii1, сейчас понемногу изучаю Laravel и написания плагинов для CMS(Пока только Joomla)
В верстку с PSD-макета не умею.
Можно ли куда то устроиться с таким багажом знаний?Нужны советы и что вообще спрашивают на собеседовании, на что смотрят и как вообще себя вести и т.д
Или легче во фриланс пойти или на удаленку?
Ах да, могу еще и в Python, в том числе давно когда то юзал Django и Flask
Можно. БД и ООП подучи, git, юнит тесты, основные паттерны. В принципе там немного, с тем что у тебя написано, на пару недель занятий. С этим можно уже много где устроиться. Вместо написания плагинов лучше учи архитектуру, т.е. как роутер сделать, как контроллеры, мэпперы и хэндлеры написать, темплейт энжн организовать и все в таком духе. Для вдохновения и набирания опыта гляди код популярных фреймворков, как там это все написано.
Очевидный Symfony.
Я в 34 первый раз поебался, и ведь дали что характерно. А ты боишся что джуном в 26 не возьмут.
Устроился на удаленку Yii2/Yii за еду буквально(0.5$ в час)
Заказчик согласен со временем на увеличение рейта, с работой справляюсь, оплачиваемое тестовое было и в пт-сб уже зп, лел
Только заплыл от гребанного насморка, бесит
Примерно так, юзай альтернативный синтаксис управляющих конструкций
<?php foreach($tyanki as $tyan): ?>
<span><?= $tyan['name'] ?></span>
<br>
<?php endforeach; ?>
0.7$*
ну дак кароч похапешторм, компилятор-то до сих пор не видит!
что делать-то?хочу писать мокрописьки на пхп и смеяться.
Написал по обьявлению программиста пхп с вопросом есть ли стажировки, мне ответили, что приглашают на собеседование и стажировки есть.
В вакансии программиста пхп у них такие требования:
знание PHP 7 (ООП)
знание реляционных БД ( PostgreSQL)
знание HTML5, CSS3, Sass, JavaScript
умение верстать адаптивно с помощью CSS3 i медиа выражений
знание фреймворка Phalcon, Sencha Ext JS
желание узнавать новые технологии и развиваться
пхп я знаю на уровне новичка, делал задачи ОПа на студентов и файлообменник, знаю основы фреймворка Laravel, html и css учусь верстать пока что, sass и галп юзаю.
Но все равно очень очково. Что вообще будут спрашивать? Как не запороть?
блять я так хочу устроиться уже, просто мечтаю сука, зарабатывать неплохие деньги тыкая по клавишам, решать интересные проблемы, а не ебашить на стройке или в маке, они меня только на встречу пригласили по поводу стажировки, я уже мечтаю как работаю программистом
еще очково то, что мне написали "Предварительно мог бы Вас на встречу в понедельник. Жду ваш ответ", я ответил окей, могу и пока что нет ответа, то есть он как бы меня пригласил, я ответил что могу, но должен типо подтвердить фразой типа "Окей, жду Вас в понедельник", но тупо ничего не написал. Получается я уже могу приходить или он должен был ответить?
Думаю на верстке и JS проебешься
Спрашивают везде по разному, где то просто просят рассказать с чем работал, кто ты вообще такой то есть, о проектах рассказать
Где то будут просто по листочку тебе вопросы задавать
Еще в других местах вообще нифига спрашивать не будут, попросят решить их проблему под видом тестового и МЫ ВАМ ПЕРЕЗВОНИМ
Щас сам не на стажировке, а просто задачи выполняю по Yii2 на удаленке, спрашивали про опыт работы и дали тестовую задачу(которую оплатили, т.к я ее успешно сделал)
Не надейся так с первого раза попасть на работу, чтобы не было разочарования в себе. Ты можешь по скиллам подходить, но что то в тебе им не понравилось и ты из очередных ждущих звонка или наоборот.
Жди их ответа, во сколько и куда тебе подойти.
А версию с безопасными потоками попробуй
Ну приходит тогда уж
Надо что-бы все значения выводило. Что тут не так?
Добавлю это сюда. И хер поймешь что там
1. Всё правильно выводит, почитай хотя бы мануал перед тем, как спрашивать: http://php.net/manual/en/function.mysql-num-fields.php
field - это не строка, а поле, соответственно mysql_num_fields выводит количество полей/колонок в строке, а не количество строк в таблице. Тебе нужна эта функция: http://php.net/manual/en/function.mysql-num-rows.php
2. Зачем ты учишься старью? Ты знаешь, что mysql_* функции уже лет 5 как устарели, а в новой версии PHP (7-я) вообще удалены? Изучай PDO. Можешь обзорно ознакомится с mysqli: http://php.net/manual/en/book.mysqli.php
Когда этот тред уже утонет нахуй, каждый раз после прочтения ОП-поста меня аж передёргивает из-за того
>Не умею ни во что кроме mysql_*
Учись.
>И что с ними не так!? Работают же..
Начнем с того что это не ООП а процедурщина. Так же использование этих функций не поддерживает нормальную обработку ошибок, не поддерживает экранирование данных изкоробки.
Из-за всего вышеописанного ты будешь лепить свои непонятные велосипеды, которые будут работать криво, с уязвимостями и через время их невозможно будет поддерживать.
Максимум говнокод: http://pastebin.com/raw/SJBEfLep
Но, думаю, суть ты понял. А вообще, почитай: http://php.net/manual/en/tutorial.forms.php
Там курс php поломан.
PHP генерирует HTML-страницу, скачать пользователи могут разве что твой сгенерированный HTML.
Точно? А то я там такого понаписал, что будет стыдно, если увидят.
ошибка в ДНК
Прошел курс доброанона на http://archive-ipq-co.narod.ru/
Подскажите, пожалуйста, что учить дальше?
Хтмл, цсс прошел тоже на код-академии.
Хочу сделать сайт.
Где понятно написано о создании вэб-сервера и про хттп протокол?
а вот, нашел у него же
http://archive-ipq-co.narod.ru/tsuzuke.html
годные ссылки или что-то другое посоветовали бы?
Без указания action'а запрос отправится на ту же страницу, с которой ты отправляешь форму. Нужно - используй, не нужно - указывай всё явно.
>>858780
Годные.
>>859661
Понаставь var_dump/console.log и смотри где проблема, мы тут экстрасены по мелким кусочкам определять как у тебя в проекте всё устроено? Функции iataToCity и getImageURL могут возвращать всё что угодно, нам-то откуда это знать? Ещё ты не используешь шаблонизаторы для PHP, код выглядит как говно. Если ты используешь jQuery, то уже должен сам разбираться с подобными проблемами, а не отписывать в тред из-за мелочей.
Нет, там проблема другого характера. Сначала выполняется php-код, а только потом jQuery. PHP при загрузке обращается к ещё не загрузившейся функции. Вот в чём хуйня.
На фоне умершего бывшего треда, задам вопрос.
Может чудо произойдет.
Короче.
Есть какие-либо конференции, где школьники и великовозрастные саморазвиванцы могут отписываться об изучении языков программирования, и пхп в частности?
Все, что не находил - везде людей раздражало это, и справедливо.
Значит нужно искать где конфа сплошь из таких, как я.
Что значит отписываться об изучении языков?
в пхп тред, сорь за опечатку.
но в принципе можно и в жс тред, учитывая местных вкатывальщиков
Т.е. прямо сюда?
У меня успехи уровня методичек уроков информатики.
Учу по тому анимешному гайду из старой шапки, на народе который.
Вчера только переменные закончил, сегодня повторю все и продолжу. Вот.
С таким макаром в /dr/ может даже лучше.
Ну все писать в тред не надо, ты лучше вопросы записывай и если не найдешь ответы то задавай. Я сам так делаю, обычно отвечают.
Ну уроки там слава богу для дебилов вроде меня.
Огорчает одно - я не знаю английского, и божественная коде-академик мне недоступна.
Пытаюсь освоить его, но пока муравьиными шажками.
надо создать генератор случайных чисел. вот есть html документ, где в двух формах указан адрес обработки - php файл, в эти формы вводятся минимальное и максимальное значения. а дальше что? каким образом php файл будет брать введенные числа? памагите
> Учу по тому анимешному гайду из старой шапки,
Она не старая, а по-прежнему актуальная. Автор того анимешного сайта обитает в другом треде с нормальной шапкой, выше скинули линк.
>>861931
> божественная коде-академик
В голосину. Курсы там ни о чём просто, не знаю чему там можно научиться.
> не знаю английского
В /fl тред висит, почитай шапку и задрачивай.
>>861970
А ты вообще с формами работал когда-то?
> каким образом php файл будет брать введенные числа?
Данные будет брать из HTTP-запроса.
Почитать:
https://github.com/codedokode/pasta/blob/master/network/http.md
http://php.net/manual/en/tutorial.forms.php
https://www.tutorialspoint.com/php/php_get_post.htm
спасибо, добрый самаритянин!
>В голосину
Ну это уже рефлекс такой после двачей. Все что на английском языке - уже на 100% лучше рунетовского аналога. Рад что не прав.
А за ссылку спасибо на нормальный тред, боялся что совсем пропал и я зря пхп учу.
> есть ли возможность сделать чат без такой функции?
Вебсокеты. Вот либа для PHP: http://socketo.me/
Ну так var_dump и print_r форматируют вывод в виде дерева, просто HTML так устроен, что съедает символы-разделители. Оборачивай var_dump в <pre></pre> для сохранения форматирования.
Нашел. mb_strtolower
Такие задачи рассматриваются в каждом туториале по работе с формами/БД. Вот пример: https://www.formget.com/php-data-object/
Какие-то заголовки надо? А то у меня то их кэша грузит, то из сервера.
http://stackoverflow.com/questions/19997766/converting-an-xml-into-a-php-multidimensional-array
int xml_parse_into_struct() не умеет делать многомерные массивы. Пробовал уже. Там нужно рекурсивно обращаться к элементам и изобретать велосипед.
/var/www/html
делаю простой конфиг и нифига
а просто /var/www
всё норм
В настройках браузера не пробовал поковырять?
На английском учить стоит не потому, что с бургами собираешься контачить, а потому, то вся актуальная инфа на нем. Переводится в лучшем случае несколько процентов инфы, причем не всегда актуальной и адекватной, да еще и с задержкой на выпуск.
Почему у слона пхп из жопы торчит стрела?
Бтв, дайте годные мануалы по пхп, во всех которые находил пишут как для слабоумных.
Анон, помоги плес.
>заставляют перекатываться на пхп.
Так сломай ебла этим выродкам.
За такое здоровья лишать надо - или на бабки ставить.
Никаких шуток.
> дайте годные мануалы по пхп, во всех которые находил пишут как для слабоумных.
Ты сам, кхм, не очень далёк, раз не можешь нагуглить мануалы, которые не ориентированы на слабоумных.
Читай php.net и phptherightway
> Почему у слона пхп из жопы торчит стрела?
>>861914
Пишу одностраничное приложение. Посоветуй простой php-фреймворк для бэк-энда, если от него мне требуется всего лишь поддержка MVC, несложное безопасное взаимодействие с базой данных на MySQL и возможность запилить REST API. Ну и юнит-тестирование.
Или можно вообще собрать солянку из библиотек маршрутизации, REST, юнит-тестов и чё-нить для БД/хуйнуть микрофреймворк типа Slim?
Ну ты сам уже на все вопросы ответил. Берёшь один index.php Slim, ORM какая тебе понравится и PHPUnit.
Не очень понятно, зачем это всё для одностраничника.
Спасибо, анонче.
Зачем мне всё это? Не хочу изобретать велосипеды и ебаться с поддержкой монолитного кода. Вот и всё.
Под описанием мануала "как для слабоумных" я имел в виду php.net, в числе прочих.
А вот за phptherightway спасибо, анон, добра тебе :3
Господа, мне 27 и Я 1с'ник (Яб сказал, что то ближе к уверенному мидлу).
Думаю перекатиться/изучить новый язык.
Выбор между JavaScript, PHP, Java.
Собсно на отдельных PHP и JS Я врядли больше денежек поимею, но в связке с 1с это будет неплохим и быстрым бустом (учитывая что есть какиет знания знания HTML и CSS).
Накидайте советов по сложившейся ситуации, хороших и разных (что учить, как осваивать очень не люблю суходрочку с книгами, хотелось бы аналогов-подобий javarush).
codewars
Прошу помощи/совета у знающих какие книги/курсы/сайты осваивать, чтобы было и эффективно и с минимизацией ненужной информации.
Симфонию и ларавель освой. Всяких видосов и статей по ним уйма, но если опыт с пхп есть то лучше почитай доки, примеры и сам разбирайся.
Если прямо очень хочется видео курсы то специалист пожалуй. Они годные, все разжевывается и объясняется.
Всем доброго дня.
Решил пару задачек ОПа (мир дому его).
Gr. Nazy http://ideone.com/meYReN
опечаточки http://ideone.com/YSfidW
Последнее не очень работает так, как в большенчстве слов хитрые бюрократы поменяли по две, а то и три буквы. Пока не знаю как лечить
>>875347-кун
Я так читал, что ajax нужен, когда я хочу отправить данные, но не перерисовывать всю страницу, а только часть. А мне же нужно отправить этот json на другую страницу.
ЧЯДНТ?
http://ideone.com/HNVYLP
" в пятой строке
В value кнопки удаления комментария заношу ID, чтобы можно было понять какой именно комментарий удалять. Но теперь проблема в том, что вместо надписи 'delete', там красуется id комментария. Как решать?
Всё, решил. Создал вторую кнопку, а первой сделал тип hidden. Я и забыл, что при action вся параметры сохраняются, не важно на какую кнопку нажал.
И вообще, необязательно указывать, что ты передаешь json, но все равно данные передачу должны быть в таком формате. То есть в твоем случае ты в js можешь написать просто так:
$.post("myPostHandle.php", { str : "Tuturu!" }).
done(function(data) { alert ("Ok!"); })
.error(function(e) { alert ("Error : " + e.toString()) };
Хм. Я скопировал твой код и урлом вставил 1 пхп страницу (исходную, на которой код). Получил алерт ок.
Но мне надо передать данные на другую страницу. Я вставляю урл2 и нихуя.
Тебе будет что-либо приходить, если твой пыхо-скрипт будет отправлять данные в ответ.
То есть:
myUrl.php:
if (isset($_POST["str")) {
echo str;
}
else {
// здесь можешь передать ошибку
http_response_code(400);
echo "No str passed";
}
Сорри, в первом echo должно быть $_POST["str"];
Там если что квадратной скобочки не хватает где isset. Я с телефона, неудобно
Ты здесь не смотришь код ответа, а устанавливаешь, чтобы хэндлилась ошибка. В случае пхп до версии 5.4 нужно вместо response_cose написать header("Status: 400 Bad Request"); тогда ты при ошибке будешь получать не обычный ответ, который аякс будет расценивать как data, а error, который будет хэндлиться в соответствующем методе
Ну еба, ты уже знаешь, что у тебя скрипт принимает запрос, просто не понимает, что у тебя там есть параметр str. Проверь, почему это так, пусть талц скрипт просто печатает содержание поста. print_r($_POST)
Хм, ну, значит, почему-то не отправились данные, хуй знает, почему. Попробуй в явном виде сделать:
$.ajax({
type: "POST",
url: "myHandler.php",
data: {str : "Mda"},
success: function (data) { alert(data); }
});
Все равно пусто.
Я на всякий случай обращу внимание, что жс-функция привязана к ссылке
<a id="print" href="readjson.php">go</a>
Потому что мне нужно перейти на страницу readjson.php
Если я привязываю функцию к диву
<div id="print">Распечатать</div>
Алерт правильный, с данными.
Но мне не нужен алерт на этой странице, я хочу уйти с нее и открыть readjson.php, где будут данные и дальнейшая логика. Может, я хуйню гоню? Ну или как еще мне передать данные, которые собрал жс-скрипт (не форма с инпутами), на другую страницу?
Епта, так ты хочешь, чтобы у тебя вообще на другую страницу перешло на твоем сайте? Аяксом такое не делается, аякс нужен для обновления данных прямо на странице, чтобы не делать постоянных загрузок, и улучшить UX. Ну, несколько лет назад так было, по крайней мере. Вот тут есть инфа какая-то по тому, чтобы открыть новый урл с пост-датой.
http://stackoverflow.com/questions/2367594/open-url-while-passing-post-data-with-jquery
На стаковерфлоу написано про $_SESSION в пыхе, я никогда не пользовался, но вдруг тебе поможет. В моей ссылке там в самом внизу есть.
Вот этот >>875471 анон сказал мне влезть в ajax.
Бля, ну хуй знает, в общем, мне надо обойти жс-функцией страницу1 и получить определенный массив. Это я сделал. Теперь я сижу с этим сраным массивом и не ебу, как мне отдать его на страницу2.
Бля...
Ну вот ты можешь сделать Хидден форму, которая будет вести на твою страницу, которая должна принимать пост, пасать данные в это форму и делать сабмит. Вот такой вот костыль. За подробностями на стэковерфлоу.
Весьма похоже на то, что мне нужно, но я не понял, как передать пост в форму и потом из нее.
Параметры поста становятся полями формы в этой ситуации. Поля формы можно изменять с помощью js, то есть вот тебе нужно поле str, ты тогда добавляешь в ту форму input str, со значением tuturu.
.append($('<input/>')
.attr({'type': 'hidden', 'name': 'str ', 'value': "tuturu"})
.......
Отправляются данные просто сабмитом формы. В жиквери это просто тебе нужно выбрать селекторами форму и вызвать у неё метод submit()
Циклом перебираются все страницы и отображаются на странице. Если элемент меню активен и имеет подменю, то отображаются его подменю, если у подменю есть активный элемент и подменю, то отображаются его подменю. И так далее.
Получается при каждом нажатии весь цикл срабатывает заново и отображает под меню в соответствии с тем на что вы нажали. И как бы получается такое дерево.
Кто-то знает как примерно можно сделать, чтобы при кажом нажатии отображалось ТОЛЬКО подменю выбранного элемента?
Кто не понимает словесно, вот код - http://pastebin.com/x9R5mP2s
На говнокод не обращайте внимание, проект писал не я и он очень старый.
Мимотожеобучающийся. Имхо, нахуй курсы по php
1) Если шаришь в HTML, то пропускай, если нет, то смотришь "30 Days to Learn HTML and CSS"
2) Читаешь:
2.1 Котеров Д. В., Костарев А. Ф. - PHP 5. 2-е издание (В подлиннике)
2.2 Josh Lockhart - Modern PHP. New Features and Good Practices - 2015
3) Выбираешь фреймворк, качаешь курс по нему, параллельно читаешь самую популярную книжку из обновленных хотя бы под нужную мажорную версию и читаешь доки.
Бро бро броооооооо
Я вчера ночью ушел, надумал что-то подобное, но у меня вышло нечто кривое, как ебучий франкенштейн, а потом я увидел твой код, это гениально, ты такой охуенный, ебааааать, можно же заппендить эту пиздоблядскую форму и сразу забить туда данные, как я сам не додумался, ты такой няша, я бы тебе отсосал с проглотом! Спасибо огромное!
Я, конечно, удивлен, что такую херню не сделали как-нибудь давно одним методом в какой-нибудь известной библиотеке. По-моему, в нем есть очевидная необходимость. Я просто почему такую херню городить стал, веб-сервис меня судьба прижала написать, а до этого я тискал андроид, и там передача данных с одного экрана на другой сделана мммаксимум просто. Вот это я охуел, когда узнал, что здесь нужно что-то костылить с какими-то блядь формами.
Спасибо тебе большое еще раз, анон, ты меня просто спас, это очень красивый костыль, я бы до такого сам не допер!
По видео курсам вообще не эффективно как-то, сколько не пробовал, всегда бросал. Лучше открыть нормальную книгу, идти по главам с описаниями всяких фишек языка и экосистемы, и под каждую фишку придумывать малюсенький проектик на пару файлов. Все их потом совать в один гит и проставлять тэги.
Плюсы - материал хорошо усваивается, можно если забыл, по тэгам всю историю прокрутить, появляется какой-никакой свой код.
РТ-00002266 6
match
match
match
match
match
match
РТ-00003236 2
РТ-00002193 4
Что исправить, чтобы получить
РТ-00002266 6
match
match
match
match
match
match
РТ-00003236 2
match
match
РТ-00002193 4
match
match
match
match
id в Базе есть и совпадают, просто почему-то цикл не обходит их.
РТ-00002266 6
match
match
match
match
match
match
РТ-00003236 2
РТ-00002193 4
Что исправить, чтобы получить
РТ-00002266 6
match
match
match
match
match
match
РТ-00003236 2
match
match
РТ-00002193 4
match
match
match
match
id в Базе есть и совпадают, просто почему-то цикл не обходит их.
Проблему решил, поменяв местами очередность прохождения, сначала while, потом внутри foreach. Так и должно быть? Почему? Почему он не проходил по бд каждый раз, когда получал значение из форича?
Все работающие проекты (и приносящие деньги), которые я видел изнутри за много лет своей работы - чертовски не по фен-шую собраны, но собраны и собраны просто. Нет никакого автолоада, компосера, есть только правильный флоу разработки (git, тестирование, итерации), простой стек технологий и набор очевидных правил в духе "ололо, всиигда фильтруй приходящие от клиенты данные". Почему все разрабы упорно ищут пилюлю от всех рутинных "проблем" в лице полуготовых фишек, при этом создавая новые завуалированные проблемы ?
Потому, что всех здравомыслящих людей похапешники истребили ещё в 2009 г.
Ответ почти на все вопросы: потому что фреймворки/либы позволяют быстрее, проще и безопаснее решать поставленные задачи. Популярные компоненты покрыты всеми возможными тестами и живут не один год, развиваясь в опенсорсе, а твои велосипеды могут быть плохо оттестированы + новым членам команды в велосипедах нужно разбираться. В твиге один раз разобрался - встречаешь его во многих проектах. А вот если на каждом проекте будет свой велосипедный шаблонизатор, то разбираясь в этом можно поехать.
> Почему PHP прогеры
Почему ты акцентируешь внимание именно на PHP? В вебе куда ни глянь - встретишь такую же картинку. В JS ещё и хуже.
> Зачем нужен композер?
А что реально сложное ты писал?
Композер - чуть ли не лучшее, что произошло с PHP за последние ~5 лет. Единый стандарт автозагрузки (до этого у фреймворков были свои автозагрузчики, даже у твига свой автозагрузчик, поди разберись во всех особенностях). Лёгкость установки пакетов (всё упростили до одной коротенькой команды). Композер за тебя разбирается с версиями зависимостей, в то время как тебе придётся искать старую версию вручную (ведь новая не подходит для другого пакета - теперь это твоя головная боль, раз композер нинужен). Композер умеет ставить пакеты глобально/из кеша - ведь глупо когда у тебя в восьми директориях находится один и тот же пакет. Композер позволяет лочить зависимости - тебе не нужно кучу лишнего хранить в гите, достаточно хранить лок-файл - слепок зависимостей.
Быстрее - да, не спорю. На этом можно остановиться. Давай рассмотрим детали - чем вот такая конструкция
$db->query("SELECT blabl FROM blabla INNER JOIN blabla INNER JOIN blabla etc .. ");
хужу чем то же самое на доктрине ? Лично меня rawsql ничем не пугает, ну параметры отфилтровал, отформатировал во много строк и забыл про него.
ЗЫ: писал и пишу много всего, поллинги утсройств по mqtt протоколу, слкадирование и высчитывание всевозможный kpi, рисование графиков в браузере и тд и тп. С полным современным набором тулзов: nginx, php, python, rabbit, postgres, memcached, ansible и тд и тп. Про js я вообще молчу, либы сторонние мы юзаем только когда нужно что-то адово рутинное сделать - график нарисовать в канвасе, например.
Доктрине - это лидер рынка.
Доктрина нужна не для этого. Она нужна чтобы например одной строчкой загрузить запись из Бд в объект, а потом еще одной строчкой найти изменения во всех загруженных объектах и сохранить их обратно в БД.
Доктрина это ORM - Objects to Relational (database) Mapper. Она предназначена для отображения объектов на записи БД. (мне кажется, это должно быть написано где-то в начале мануала. Плохо, если ты это не прочел)
Если тебе не нужно мапить данные на объекты, то ты можешь ее не использовать и писать SQL запрос. Абсолютно нормально например сделать SELECT COUNT(..) или SELECT id FROM ...
Однако если ты хочешь написать SELECT * FROM ... то остановись и подумай, а надо ли тебе гонять по программе кучу массивов с неизвестным набором полей, в которых потом не разобраться и которые будут вызывать кучу ошибок при попытке внести правки (я работал с таким массиво ориентированным кодом, знаю).
> Почему PHP прогеры люто не любят писать голый SQL ?
Потому что это не всегда удобно. Если тебе надо сделать форму редактирования чего-то в админке, то Симфони предлагает кучу готового кода и ООП подход, а ты предлагаешь видимо по всей программе гонять массивы неизвестного состава так что надо половину кода перерыть, чтобы разобраться где там одно поле заменяется на другое.
> Это же технология, которую ты непоредственно используешь, а ты ее абстрагируешь за какимито цепочными вызовами, которые хз, как работать будут по факту и всегда проверять приходится через логи, че там за SQL налепился по факту.
Логи не требуются, открой для себя например EchoLogger. Ну и если тебе так надо, ты можешь найти класс который парсит DQL запросы, скормить ему свой запрос и получить SQL. зачем в логах что-то искать? Изучи код, с которым работаешь.
> Зачем нужен композер? Почему нельзя утянуть с гитхаба папку с исходниками и закоммитить ее в свой репозиторий и в ближайшие пару лет про нее вообще не вспоминать?
Как маленький. Библиотеке A могут быть нужны библотеки B, C, D определенных версий. Их ты тоже пойдешь искать по разным сайтам, скачивать, распаковывать? Потом, библиотеки надо интегрировать, как минимум, подключить автозагрузчик. Опять ручная работа.
И зачем захламлять репозиторий сторонним кодом? Заодно это защищает от умников, пытающихся править сторонние библиотеки.
А как ты обновлять библиотеку будешь с учетом всех зависимостей? А если у тебя в проекте 20 библиотек? 40?
Сдается мне ты просто английский наверно не знаешь, не можешь прочитать документацию и пытаешься придумать оправдания чтобы не использовать композер. Попробуй прочитать хотя бы первые несколько страниц.
Про твиг: на нем удобнее писать шаблоны чем на сыром пхп. Аргументы в пользу твига подробно разжеваны в оф документации.
> Зачем брать готовое решение для симфони (например авторизацию юзеров через три пизды)
Авторизация в Симфони переусложненная, согласен. Видимо они пытались придумать решение на все случаи жизни.
> Почему все гнобят простые решения типа Codeigniter ?
Потому что архитектура плохая и код из времен PHP4. Косяки в архитектуре видны невооруженным глазом если ты разбираешься в ООП, DI и других модных словечках. Возьми Слим или Silex который имеет примерно те же возможности но лучший код.
> Нет никакого автолоада, компосера, есть только правильный флоу разработки (git, тестирование, итерации), простой стек технологий и набор очевидных правил в духе "ололо, всиигда фильтруй приходящие от клиенты данные".
Сдается мне ты просто недостаточно разбираешься в написании больших приложений чтобы видеть недостатки или преимущества.
> Почему PHP прогеры люто не любят писать голый SQL ?
Потому что это не всегда удобно. Если тебе надо сделать форму редактирования чего-то в админке, то Симфони предлагает кучу готового кода и ООП подход, а ты предлагаешь видимо по всей программе гонять массивы неизвестного состава так что надо половину кода перерыть, чтобы разобраться где там одно поле заменяется на другое.
> Это же технология, которую ты непоредственно используешь, а ты ее абстрагируешь за какимито цепочными вызовами, которые хз, как работать будут по факту и всегда проверять приходится через логи, че там за SQL налепился по факту.
Логи не требуются, открой для себя например EchoLogger. Ну и если тебе так надо, ты можешь найти класс который парсит DQL запросы, скормить ему свой запрос и получить SQL. зачем в логах что-то искать? Изучи код, с которым работаешь.
> Зачем нужен композер? Почему нельзя утянуть с гитхаба папку с исходниками и закоммитить ее в свой репозиторий и в ближайшие пару лет про нее вообще не вспоминать?
Как маленький. Библиотеке A могут быть нужны библотеки B, C, D определенных версий. Их ты тоже пойдешь искать по разным сайтам, скачивать, распаковывать? Потом, библиотеки надо интегрировать, как минимум, подключить автозагрузчик. Опять ручная работа.
И зачем захламлять репозиторий сторонним кодом? Заодно это защищает от умников, пытающихся править сторонние библиотеки.
А как ты обновлять библиотеку будешь с учетом всех зависимостей? А если у тебя в проекте 20 библиотек? 40?
Сдается мне ты просто английский наверно не знаешь, не можешь прочитать документацию и пытаешься придумать оправдания чтобы не использовать композер. Попробуй прочитать хотя бы первые несколько страниц.
Про твиг: на нем удобнее писать шаблоны чем на сыром пхп. Аргументы в пользу твига подробно разжеваны в оф документации.
> Зачем брать готовое решение для симфони (например авторизацию юзеров через три пизды)
Авторизация в Симфони переусложненная, согласен. Видимо они пытались придумать решение на все случаи жизни.
> Почему все гнобят простые решения типа Codeigniter ?
Потому что архитектура плохая и код из времен PHP4. Косяки в архитектуре видны невооруженным глазом если ты разбираешься в ООП, DI и других модных словечках. Возьми Слим или Silex который имеет примерно те же возможности но лучший код.
> Нет никакого автолоада, компосера, есть только правильный флоу разработки (git, тестирование, итерации), простой стек технологий и набор очевидных правил в духе "ололо, всиигда фильтруй приходящие от клиенты данные".
Сдается мне ты просто недостаточно разбираешься в написании больших приложений чтобы видеть недостатки или преимущества.
Wordpress нахуй. Из CMS Drupal или на худой конец Modx. Из фреймворков - laravel или symphony.
W5.2 Некто кладет в банк 10000 р. Банк начисляет 10% годовых (то есть, каждый год на счету становится на 10% больше, чем в прошлом году). Напиши программу, считающую, через сколько лет в банке будет миллион? Сколько лет будет этому некто? Доживет ли некто до этого дня, если сегодня ему 16 лет?
http://ideone.com/rGUU2n
Этот тред нелигитимный, мы сидим тут: https://2ch.hk/pr/res/864640.html (М)
По коду:
> 3. $years;
В PHP нет объявления переменных, в этой строке нет смысла.
> 5. $d = 10000;
Непонятно, что это за $d. Давай полные имена переменным.
> for ($years = 0; $years <= 100; $years++) {
> ____$years++;
У тебя на каждой итерации значение $years будет 2 раза увеличиваться на 1. Зачем?
> if ($d >= 100000)
Ну так миллион же по условию задачи, а не сто тысяч.
> $d += ($d/10);
> $age = $age + $years;
В первом случае ты использовал комбинированный оператор, а во втором - нет. Почему?
Получаю задания типа сделай страницу регистрации, измени дизайн главной страницы.
У них есть их личная cms сделанная в 2008 году и все новые и старые проекты пишутся на этой ебаной cms которая написана на первом зенде. Проекты они делают для городских сайтов и учебных заведений и со стремным дизайном.
Как думаете, анончики, стоит ли там оставаться или искать какую-то современную веб-студию которая дрочит на все новое и современное?
А долго все эти ЇЇЇ и ларавели учить придётся?
Это много времени у меня займёт?
Ну, допустим, сколько лет нужно, чтобы стать ФУЛСТЭК похапэ дЫрВелопЫрам?
Если свох проектов на чистом php не делают, то смысла нет. Так ты ничему не научишься, только время проебывать будешь. Нормальная фирма это где ты свою cms/какой-то другой проект пишешь с нуля, все с классами, разделением ответстветенности, оптимизациями. Новое-не новой тут не при чем, главное что всю архитектуру от и до понимаешь, как вообще проекты с нуля создавать. Если этого нет, то просто проеб времен получается.
ну тем не менее, даже по странице регистрации, я проектирую связи между таблицами, узнаю какие где типы и все такое, и прийдется же писать запросы ко всему этому, не прямо таки бесполезно, но конечно обидно, что мало того, что cms, так еще и некро
Книги курсы задачки по пехэпе - вот это всё дайте пожалуста, что б без ебланства уровня "что такое массив" но и что б я понимал.
Щас пока устанавливаю апач и скулу
> веб-студию
> симфони
Охуеть, веб-студии обычно пишут на вордпрессе/джумле и прочей параше, откуда симфони-то? Алсо по твоему сообщению непонятно, работал ли ты программистом вообще, какой твой уровень знаний и так далее. От этого очень сильно зависит ответ.
Они не делают ничего серьезного на любой cms, максимум какие-то правки, если проект с нуля, то только симфони.
Я программистом не работал, сделал один заказ на фрилансе (вордпресс+немного фронта), есть свой проект на симфони, именно поэтому они меня и берут, тк уже щнаком с фреймворком.
https://www.sendspace.com/file/g689rp
У слона 82-миллиметровый миномётный снаряд в жопе что ли?
Это же хвостик, дурашка.
второй - что означает знак _ сразу после знака переменной?
$_ тоесть
> автор предлагает использовать для этого строку, если не трудно, поясните как
Думаю, он подразумевал конкатенацию (склеивание строк)
По коду:
> $Name
В PHP принято использовать camelCase для именования переменных.
> "$randomText"
Непонятно зачем ты оборачиваешь переменную в строку. Можно просто использовать $randomText.
> $name = implode("",$Name);
Это незачем делать на каждой итерации цикла.
Проще собрать массив в строку один раз после окончания цикла.
> $let = array
Странное имя у переменной. У тебя ведь в массиве слоги, почему бы не использовать это слово, понятнее же для читающего будет. Если не знаешь перевод - есть гугл-переводчик.
Да, я прочитал про конкатенацию (склеивание строк).
Если ты про $Name[] = "$randomText"; то я добавляю в пустой массив $Name новый элемент, а не оборачивваю в строку, двойные кавычки позволяют добавлять в качестве элемента переменную, а не строку.
$let - сокращение от $letters
Поправь меня, если я ошибаюсь.
Мне кажется, или ты придираешься, чтобы придраться?
Ничего не имею против критики и дельных замечаний, но камелКасе я принебрёг сознательно, а остальные твои комментарии не содержали ни одной поправки или ответа, только поток негатива.
Критика - это не "всё это кусок кала", а "здесь нужно было сделать A, а не B, потому что C.
Да, и
$let = array
не переменная, а массив, если уж придираться, как ты. На этом моменте до меня дошло, что ты и сам нихуя не знаешь толком, можешь больше не отвечать мне, не утруждайся.
Переделал, убрал массив, стало проще. Один хуй у автора задач в теории, которую он даёт скромные опечатки вроде кавычек в добавлении новых элементов в пустой массив. Понятно, что читай документацию.
Дает еррор такой: The mbstring extension is missing
Глянул пхпинфо() - Loaded Configuration File (none)
И рядом же: Configuration File (php.ini) Path C:\WINDOWS
В Path директорию php прописал, /ext тоже а эта хуйня все так же не работает.
Помогите.
Слава яйцам бубен помог. Всем добра.
и еще
я установил php , скачал апач,запускаю, открывается окно апач монитора , а дальше дело не идет, что делать???
Лалка ты, просто работа на PHP не ограничивается клепанием дерьма на wordpress. Когда ты дойдешь до этого, ты изменишь свое мнение.
Касательно админа - у меня есть команда админов, но:
а) Это не избавляет тебя от необходимости уметь настраивать как свое, так и продакшн окружения
> Ему дали готовое решение которое за 2 минуты поднимается, нет, я хочу дрочить консольку и говно есть.
Готовое решение подходит для ТИПИЧНЫХ проектов, обмудок ты сраный. Когда у тебя будет рейт 55$\час на апворке и более 1000 часов, как у меня, тогда поговорим. А анон пусть сам решает, хочет он знать и понимать как и что происходит на серварах и получать нормальные деньги за свою работу, или ебашить говносайты всю свою ссаную жизнь.
Laravel/Zend/Symfony/Phalcon - выбирай любой. Лучше бы Zend/Symfony, потому что с них потом куда проще перекатываться на другие. про Yii уже сказали - надо быть последней опущенкой, что бы сознательно выбирать это говно. Хотя CodeIgniter еще хуже и его при этом кто-то тоже выбирает
PHP и есть ШАБЛОНИЗАТОР по своей изначальной природе, лалка
Анон, вопрос по урокам, которые были в шапке. Задача на регулярные выражения.
Задачка на проверку телефонов
Дан текст, который по идее должен быть номером телефона в виде 8-(911)-506 56 56 (т.е. человек может ввести не только цифры, но и скобки, минусы, может что-то еще). Но в реальности, пользователь может вместо номера написать что угодно. Напиши скрипт для проверки правильности введенного номера («8(911)-506 56 56» — правильный номер, «8-911-50-656-56» — правильный, «89115065656» — правильный, «02» — неправильный, «89115065656 позвать Люду» — неправильный).
Вот список номеров:
// Правильные:
$correctNumbers = [
'84951234567', '+74951234567', '8-495-1-234-567',
' 8 (8122) 56-56-56', '8-911-1234567', '8 (911) 12 345 67',
'8-911 12 345 67', '8 (911) - 123 - 45 - 67', '+ 7 999 123 4567',
'8 ( 999 ) 1234567', '8 999 123 4567'
];
// Неправильные:
$incorrectNumbers = [
'02', '84951234567 позвать люсю', '849512345', '849512345678',
'8 (409) 123-123-123', '7900123467', '5005005001', '8888-8888-88',
'84951a234567', '8495123456a',
'+1 234 5678901', / неверный код страны /
'+8 234 5678901', / либо 8 либо +7 /
'7 234 5678901' / нет + /
];
Помоги регулярное выражение составить. Как я понимаю, должно получится нечто подобное: $regexp = '/^([+7]|[+ 7]|[8])(???)$/m';
Анон, вопрос по урокам, которые были в шапке. Задача на регулярные выражения.
Задачка на проверку телефонов
Дан текст, который по идее должен быть номером телефона в виде 8-(911)-506 56 56 (т.е. человек может ввести не только цифры, но и скобки, минусы, может что-то еще). Но в реальности, пользователь может вместо номера написать что угодно. Напиши скрипт для проверки правильности введенного номера («8(911)-506 56 56» — правильный номер, «8-911-50-656-56» — правильный, «89115065656» — правильный, «02» — неправильный, «89115065656 позвать Люду» — неправильный).
Вот список номеров:
// Правильные:
$correctNumbers = [
'84951234567', '+74951234567', '8-495-1-234-567',
' 8 (8122) 56-56-56', '8-911-1234567', '8 (911) 12 345 67',
'8-911 12 345 67', '8 (911) - 123 - 45 - 67', '+ 7 999 123 4567',
'8 ( 999 ) 1234567', '8 999 123 4567'
];
// Неправильные:
$incorrectNumbers = [
'02', '84951234567 позвать люсю', '849512345', '849512345678',
'8 (409) 123-123-123', '7900123467', '5005005001', '8888-8888-88',
'84951a234567', '8495123456a',
'+1 234 5678901', / неверный код страны /
'+8 234 5678901', / либо 8 либо +7 /
'7 234 5678901' / нет + /
];
Помоги регулярное выражение составить. Как я понимаю, должно получится нечто подобное: $regexp = '/^([+7]|[+ 7]|[8])(???)$/m';
$objOne = new myClass;
$objTwo = $objOne;
и
$objOne = new myClass;
$objTwo = &$objOne;
В справочнике написано,что в первом случае у $objTwo копия идентификатора объекта, а во втором- ссылка на идентификатор. Но на практике я не понимаю, в чем разница - что в первом примере, изменив свойство $objOne, мы изменим аналогичное свойство и $objTwo , что во втором. ЗАЧЕМ создавать ссылку?
Почему у слона дротик в заднице?
Ты читаешь какую-то очень устаревшую статью.
Во времена PHP4 операция = делала копию объекта. Теперь все правильно:
http://php.net/manual/ru/language.oop5.references.php
http://php.net/manual/ru/language.oop5.cloning.php
"Официальный" тред тут >>880700 (OP)
>>887322
> у автора задач в теории, которую он даёт скромные опечатки вроде кавычек в добавлении новых элементов в пустой массив.
Это где? Можешь чуть подробнее написать? Может автор тогда сможет исправить ошибку.
>>887232
$let это переменная, в которой хранится массив. Переменная - это хранилище, а массив - это то, что в нее положили.
Массив может существовать и без сохранения в переменную:
var_dump([1, 2, 3]);
Тут мы создаем массив и выводим его, не сохраняя никуда.
> Если ты про $Name[] = "$randomText"; то я добавляю в пустой массив $Name новый элемент, а не оборачивваю в строку, двойные кавычки позволяют добавлять в качестве элемента переменную, а не строку.
Неправильно мыслишь. Команда
$name[] = "$randomText"
полностью равносильна
$name[] = $randomText
Если $randomText - это строка.
> двойные кавычки позволяют добавлять в качестве элемента переменную, а не строку.
Неправильно. Ты не можешь положить в массив переменную. ты можешь положить в массив копию ее значения (копию строки), которая в переменной хранится. И при этом получается копия строки, если ты теперь что-то сделаешь с переменной, копия строки в массиве останется неизменной.
Вообще, когда ты используешь переменную, это равносильно команде "взять значение из переменной". То есть echo $x выводит не переменную, а достает значение, которое в ней хранится, и выводит его. И $a = $b не кладет одну переменную внутрь другой, а берет значение из $b и кладет его копию в $a.
В "официальном" треде >>880700 (OP)
>>887226
Он не придирается, а отмечает отличие твоей программы от того, как принято писать. Есть определенные рекомендации к оформлению кода (PSR-1 и 2) и там в том числе написано, что переменные надо называть с маленькой буквы. А название переменной должно отражать ее предназначение.
Код такой (index.php).
<?php require_once('redirect.php'); ?>
<!DOCTYPE html>
<html>
<head>
<title>Creature Comforts Agent Portal: Desktop Version</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<h1>Desktop Landing Page</h1>
<p>If you hit this page, perhaps you are using a browser with a desktop-looking User Agent? Having trouble getting the mobile redirect to work, or otherwise <a href="index_mobile.html">seeking the mobile mockup landing page</a>?</p>
</body>
</html>
Выдает на денвере ошибку
Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE in Z:\home\test1.ru\www\redirect.php on line 5
Что может быть не так?
запости redirect.php
[CODE]<input type="checkbox" name="selected[]" value="'.$string['item_id'].'">[/CODE]
, ведь там ничего не надо выводить.
Но мне нужно еще задать отображаемое значение, которые там написано в строке.
[CODE]<input type="text" value="'.$string['item_name'].'" name = selected[]>[/CODE] - здесь id некуда положить.
В обработчике чекбоксов я бы написал
[CODE]if(!empty($selected)){
for ($i = 0; $i < count($selected); $i++){
$query = "DELETE FROM `items` WHERE `item_id`=".$selected[$i][/CODE]
благодарствуйте
На струя покупать VPS? Поставить на виртуалку Ubuntu Server, CentOS или Debian?
Все работают на Винде. Сервер ставится на vmware.
Где обсуждают?
Laravel, Симфони или сразу упороться Зендом?
Поковырял я этот Ларавел. Ничего нового, но пугает бешенное количество файлов, можно ли полагаться на чужие куски кода...
<input type="hidden" name="entryID" value="2523543">
> все кукарекают, что типа надо фреймворки
А тебе ведь приходила в голову мысль, что код можно как-то грамотнее структурировать, правильно разделять ответственности, чтобы себе в первую очередь облегчать поддержку проекта? Человек должен сам понимать, когда ему нужен фреймворк по каким-то причинам (хитрый роутинг/секьюрность либо валидация из коробки и так далее). А зачем брать фреймворк, когда тебя и без него всё устраивает?
Кстати, можно через композер просто отдельные пакеты ставить.
> можно ли полагаться на чужие куски кода...
Там есть юнит-тесты, так что скорее всего можно. А вот можно ли твой процедурный код покрыть юнит-тестами? Вряд ли.
Да, я понял, признаю, что забиваю на такие моменты. Я имел ввиду, что вместо ценных замечаний были придирки к орфографии.
Аноны, подскажите пожалуйста, такая задача, есть юзеры, я беру информацию(две строки) 1 проход - 1 юзер из монгодб, и сохраняю в файл. Как луче реализовать при большем количестве? Сначало сохранить в массив (по две строки сразу с разделителем в одну ячейку), а затем весь массив в файл, либо каждого юзера записывать в файл (те же две строки с разделителем)? Пишу в контроллере в cakephp.
Со всеми фичами 7-й версии можно разобраться за полчаса, если знаешь 5-ю версию. Даже между ES5-ES6 разница более разительна.
Пиздец ты даун,закинул бы ещё туда свои фотки с дачи, даун ебаный
Операции с файловой системой гораздо медленней операций с памятью. Есть исключения, (фс сидящая в памяти, буфферизация) но в общем случае ты соснешь.
Можешь написать тестовый пример, ну там 1000 наборов данных и сравнить скорость
ВНЕЗАПНО заходишь на фриланс биржу, выбираешь заинтересовавшие таски и предлагаешь заказчику свои услуги. Глядишь, после раза 20-го кто-нибудь откликнется.
какие популярны задания там,чтоб задрочить эту тему
Ну я до PHP писал на плюсах, мне для переката были полезны эти сайты:
- phptherightway
- php.net
Самый быстрый вариант будет запустить несколько тредов, которые пишут в файл блоки где-то по 4кб(размер страницы).
Нужна книга или руководство по созданию веб-приложения на пхп без использования фреймворков, желательно что-нибудь свежее с 7 пхп. Заранее благодарю. Сразу ещё спрошу, может есть какие-нибудь толковые книги по Laravel, или ничего лучше документации не найдешь?
> есть какие-нибудь толковые книги по Laravel,
Не дочитал ни одной, книги по Laravel почти все дублируют документацию.
> по созданию веб-приложения на пхп без использования фреймворков
Зачем? Если ты будешь делать всё по лучшим практикам, то в итоге сам изобретёшь фреймворк, только с ограниченным функционалом. Для небольших приложений есть оптимальный вариант - ставить готовые компоненты композером: роутер, валидатор, объектная HTTP-обёртка и так далее.
1) Кнопка выбора файла.
2) Загрузка файла на сервер
4) Удаление из файла нескольких лишних строк (шапки), чтобы первой строкой оказались названия столбцов.
4) Конвертация xls -> mysql
Сложно. Но я попробую разобраться.
Можно подробнее? Скажем так, набор колонок в эксел файле предсказуемый? Или рандом?
Количество колонок заранее известно. 1-3 и 5-6 строки лишние. После их удаления, первая строка содержит названия колонок.
Зачем? Для того, чтобы лучше понимать как фреймворк работает, делать что-то без фреймворка вроде ничего не собираюсь, но уметь хочу. Для этого и хотел почитать чего-нибудь.
Ну так читай код фреймворка, чтобы понять как он работает.
Если ты знаешь, что будет в эксел файле, тогда тебе названия колонок не нужны в принципе.
Есть смысл сразу выкинуть пустые строки.
Возможно стоит показать пользователю первые 3-4 строки и попросить уточнить с какой начинаются данные. На людей полагаться нельзя, если ты пишешь серьезную систему.
Самый головняк - парсить эксел свежих форматов, я не уверен что для ПХП есть реализация парсера для Excel 2016... Может стоило бы попросить усера сохранить данные как .CSV?
Если какие-то колонки являются обязательными, то стоит проверять что они не пустые, если есть что-то что можно validate, то это нужно делать - имейл, дата, телефон #, URL.
Если есть косяки, то усеру как-то надо об этом сообщить, желательно чтобы он понял в какой строке и что некошерно...
Задача несложная, но достаточно трудоемкая, много сценариев надо обработать...
Эксель-файл идёт прямиком из 1С. Варианты форматов файла - на картинке.
Вот по этому пути пока попробую пойти >>899457 (если разберусь, конечно).
>>899882
>Задача несложная, но достаточно трудоемкая, много сценариев надо обработать...
Там дальше вообще полный Пэ. Но его я уже поборол, просто оставил загрузку файлов напоследок.
Хм, действительно нечего. Всё работает после подключения. Странно. В пятницу я всё сделал и при запуске выдавались какие-то левые ошибки. Сегодня первым делом запустил скрипт. Просто для того, чтобы скопировать текст ошибки. А он, зараза, нормально отработал и вывел в консоль содержимое экселевского листа. Мистика, однако.
Не пытайся ему скормить эксел позже 2007.
Я посмотрел твою статью на хабре и посмотрел описание класса на сайте автора. Он там прямо сказал, что максимум для чтения - 2007.
Полюбасу сбои при чтении, парсинге или несоответствующие данные - это все должно быть обработано и показаны сообщения об ошибке. Усер должен точно понимать что ты добавил его данные в базу или нет
Вчера три часа пытался скормить майскулу двумерный массив, полученный из экселя. Сегодня ещё буду. В http://php-include.ru/stati/array-php-mysql всё подробно и для дебилов написано, но я, видимо, хуже.
Не стоит работать с двумерными массивами и mysql.
Просто в цикле записывай в базу строчку за строчкой
INSERT INTO `table` (`column1`, `column2`) VALUES (val1, val2)
https://ivanpaulin.com/portfolio/wordpress-theme-framework/
Гугл выдает только такую страницу, но где почитать про него или купить (судя по ридми, создатели темы его покупали)?
этот уп
лыл
куда
то
вниз...
хотя, в этом
есть своя
роман
тика
Есть проблема. На сервере стоит nginx+apache и phpMyAdmin. Nginx слушает 80 порт и редиректит не статические запросы на порт 8080. Apache слушает 8080.
Для phpMyAdmin настроен VirtualHost *:8080. Доступ возможен только с адреса 127.0.0.1 (т.е. напрямую из интернета не получится получить доступ, только через nginx).
Все работает хорошо кроме одного случая. После входа в phpMyAdmin он в урл редиректа добавляет порт (8080). В таком случае запросы сразу идут на apache и он выдает 403.
Во всех остальных случаях такого нет.
Это как-то лечится?
Вы видите копию треда, сохраненную 18 января 2017 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.