Искам да уча PHP и да правя сайтове сам

Fix

New Member
Здравейте,
Много ми харесва форума. От близо месец чета мненията ви и открих много интересни идеи. Пробвах да инсталирам XAMPP и Wordpress и мисля, че успях. Поне така ми се струва, като ги пусна на лаптопа. Успях да се справя с инсталация и на ОпенКарт. Само че ми е много трудно да направя това, което искам. Разбрах, че има безкрай много добавки, които мога да инсталирам, но не съм сигурен коя добавка какво точно прави.
За това стигнах до решението, че трябва да започна да уча PHP и след време да мога да си правя сам сайтове. Такива, каквито си ги представям.
В училище съм учил C/C++, както и малко FreeBasic. Учили сме и базово ниво на макроси с Excel. Правили сме страници с HTML. Програмирането ми е много интересно. Изтеглил съм си последната версия на PHP и малко ми беше трудно, да я инсталирам без Xampp, но с добавяне на пътя до екзето в променливите на операционната система май тръгна. Лека полека научавам много интересни и нови неща за мен.
Прегледах някои beginners уроци за PHP и езика ми се струва по-лесен от C++. А и няма нужда от компилиране :). Успях да стартирам няколко кода и дори променях неща в тях, за да видя какво ще се случи.
Бих искал да ви помоля, да ми препоръчате как да продължа. Какво трябва да прочета за web-програмирането? Може да се каже че стартирам от нулата, въпреки, че теоретически започват да ми се изясняват нещата. Разбрах, че има много фреймуъркс, които много помагат, за да стартираш даден сайт.
Въпросите ми са като за начинаещ:
Как да започна? Какво още да си инсталирам? Какво да чета? Къде да питам при проблеми и нужда от помощ?
Надявам се някой да ми даде съвет. Благодаря предварително!
 
От: Искам да уча PHP и да правя сайтове сам

Започни с нещо малко - разбери как работят сесии, куукита.. направи сайтче с логин, извеждане или записване на някакви данни от бд-то.
Междувременно, учи SQL (Mysql) / jQuery / HTML / CSS
Най-добре се учи като сам започнеш да пишеш нещата от нулата.

Дори и да запишеш курсове, не вярвам това да е достатъчно. Просто трябва сам да започнеш да правиш сайтове. Не само да гледаш готово написани неща. Едно е да гледаш, друго е да програмираш. Ще видиш, че ще се появат много въпроси. Иначе, препоръчвам серията на gatakka в
nau4i.me
 
От: Искам да уча PHP и да правя сайтове сам

@klk, благодаря за предложението. Няма да имам време за курсове, защото започнах работа и не знам, дали ще имам време да ги посещавам.
@momcheto, благодаря за съветите! Ще се пробвам сам и ще видя как ще потръгне. Харесах си програми за MySQL. Има една платена, която много ми харесва и може след време да си я купя. За сега ще пробвам да вкарвам SQL-кодовете на ръка.
Разгледах някои уроци на gatakka, както ме посъветва. Тоя човек има много хубави уроци за PHp, Javascrip, jQuery. Все неща които ще ме интересуват.
Ще започна с логин на потребител. Да видим какво ще стане.
 
От: Искам да уча PHP и да правя сайтове сам

запиши се на курсове https://softuni.bg/
И на 1000 курса да идеш, ако не правиш нещо конкретно файда няма.

Иначе http://www.w3schools.com/ е твоят ресурс.

PS: качи си VM с Linux за локален сървър, с виндоза ще се вкараш в приключения, които в реална хостинг сред ги няма.
 
От: Искам да уча PHP и да правя сайтове сам

Започнах скромен Liging проект. И естествено се появяват въпросите.
Каква е разликата между тези двете:
if(!($_POST['user']==='potrebitel'))
и
if(!$_POST['user']==='potrebitel')

При първия вариант със скобите всичко работи както очаквам. Ако махна скобите и кода спира да работи, но не вади грешка. Какво се случва?
 
От: Искам да уча PHP и да правя сайтове сам

Учи, чети, ако искаш и книжка ще ти пратя :D
 
От: Искам да уча PHP и да правя сайтове сам

Нищо друго освен това не ти трябва - http://nau4i.me/jupgrade/index.php/php2


Не знам какво работиш и дали си доволен, Но -... България ще има нужда от 20 000 софтуерни специалисти през 2015
Има хора които за около година са напреднали дотолкова, че да заемат позиция младши програмист и заплата около 800-1000 лв.
само желание и време за писане на (много) код ти трябва
 
От: Искам да уча PHP и да правя сайтове сам

Здравей,
скобите променят приоритета на действията. Вторият израз: сравняваш инвертираната стойност на $_POST['user'], което винаги е true или false със стринга 'potrebitel'. Понеже използваш "===", което сравнява като по стойност така и по тип на данните никога няма да минеш тази проверка. т.е в единият случай имаш false === 'potrebitel' (ако изобщо има в пост-а 'user') което е false а в другият (ако променливата user не съществува) true === 'potrebitel' , което пак е false. Операторът '!' "втъща" инверсната стойност на дадена променлива или израз, като 'каства' резултата до boolean.
Първият случай. Скобите променят приоритета на действията. Първо се изчислява изразът в най-вътрешните скоби $_POST['user']==='potrebitel'. Резултатът от него може да бъде true, false. След това инвертираш този резултат.
Като цяло научи първо какво е променлива, какво е тип на променливата. какви типове променливи може да има в php. Принципно това е език в който типа променлива не е строг. Прочети какво е приоритет на операциите, както аритметичните (които надявам се знаеш от основният курс на обучение) така и на логическите.
След това се мятай на бази от данни логини и т.н
Поздрави,
Константин.
 
От: Искам да уча PHP и да правя сайтове сам

Здравей,
скобите променят приоритета на действията. Вторият израз: сравняваш инвертираната стойност на $_POST['user'], което винаги е true или false със стринга 'potrebitel'. Понеже използваш "===", което сравнява като по стойност така и по тип на данните никога няма да минеш тази проверка. т.е в единият случай имаш false === 'potrebitel' (ако изобщо има в пост-а 'user') което е false а в другият (ако променливата user не съществува) true === 'potrebitel' , което пак е false. Операторът '!' "втъща" инверсната стойност на дадена променлива или израз, като 'каства' резултата до boolean.
Първият случай. Скобите променят приоритета на действията. Първо се изчислява изразът в най-вътрешните скоби $_POST['user']==='potrebitel'. Резултатът от него може да бъде true, false. След това инвертираш този резултат.
Като цяло научи първо какво е променлива, какво е тип на променливата. какви типове променливи може да има в php. Принципно това е език в който типа променлива не е строг. Прочети какво е приоритет на операциите, както аритметичните (които надявам се знаеш от основният курс на обучение) така и на логическите.
След това се мятай на бази от данни логини и т.н
Поздрави,
Константин.
Константине, много ти благодаря за подробното и ясно обяснение!
По принцип си имам представа за променливите от C/C++. В php ми се струва много по-лесно, защото май няма деклариране... всъщност не съм сигурен, защото видях някакво (int), докато се рових за туторси.
Намерих тук всички оператори:
php.net/manual/en/language.operators.precedence.php
Май е трябвало да използвам оператора !==, вместо да слагам скобите. Имам още малко свободно време и ще се опитам да направя страница за логване и после да ви я покажа. Харесах си и фреймуорк, който да ми помага за стила:
matthewhartman.github.io/base/
Много простичък ми изглежда, тъкмо като за моите базови познания по CSS и HTML.

Благодаря на всички за съветите и окуражаването!
Продължавам да се мъча, да напиша свестен код, който да ви покажа.
 
От: Искам да уча PHP и да правя сайтове сам

Здравей,
връща false
Код:
var_dump(!'Hello');
В детайли: интерпрататорът "каства" стинга 'Hello' до boolean, което е true, след това операторът ! го инвертира. Резултатът е "лъжа".
Поздрави.
 
  • Like
Реакции: klk
От: Искам да уча PHP и да правя сайтове сам

Здравей, klk.
Радвам се, че все още има хора, които се опитват да вникнат в детайлите на даденият казус, колкото и да изглежда елементарен. На твое място повечето програмисти биха изтрили израза и биха го написали по начин, който смятат, че работи. :)
Поздрави.
 
От: Искам да уча PHP и да правя сайтове сам

По скоро , въпросът му е: защо echo !'Hello'; не връща нищо.
А най-лошото е, че не мога да се сетя защо.


Изгледай всички уроци и след това ще ти се изяснят повечето неща.
 
От: Искам да уча PHP и да правя сайтове сам

По скоро , въпросът му е: защо echo !'Hello'; не връща нищо. А най-лошото е, че не мога да се сетя защо.

Езиковата конструкция echo работи с низове/стрингове. Резултата от конвертирането на булев израз "лъжа" в низ/стринг е празен низ/стринг, а на "истина" е низ/стринг със стойност единица.

Продължавам да се мъча, да напиша свестен код, който да ви покажа.

Ти ще се учиш ли или ще се доказваш ? Прави нещата последователно и не бързай. Рано е още за "свестни кодове", а и това в известен смисъл е доста субективно нещо.
 
От: Искам да уча PHP и да правя сайтове сам

Супер съм зарибен!
Изгледах много от видео-уроците и мисля, че почвам да схващам нещата. Значи най-трудно ми е да схвана обработките на $_POST и $_GET.
Изпотих се 15 пъти, докато разбера кой IF след кой да е!!! Как мога да отделя всички проверки в отделен файл и след това да заредя страницата.
Все пак мисля, че постигнах добър резултат. Копирах няколко реда код, промених ги към моята идея и започнах да пиша нещо като сайт:
phpprobi.byethost10.com/learning/login/
потребителя е: potrebitel, а паролата: parola
Даже и "изход" му сложих :). Добре ли е?
Сега остава да разбера как да зареждам с GET различни страници и да се оправя с целия хаос от проверки if-else.

Един приятел вика, че php се учело за 24 часа. Аз едва ли ще се справя и за месец, но наистина е зарибяващо. Поне е пълно с уроци, а тия в w3schools.com са върховни! (Мерси, Torbalan Trolski). Php не е много по-различно от C, не е като VB.
PS: Съжалявам, но нямам достатъчно мнения, за да пускам линкове.
 
От: Искам да уча PHP и да правя сайтове сам

Значи най-трудно ми е да схвана обработките на $_POST и $_GET.
Оправи си в главата асоциативните масиви, това не си го срещал преди :D
А ги има почти навсякъде де що се пише за уеб - php, perl etc.


После осъзнай суперглобалните променливи.

Един приятел вика, че php се учело за 24 часа. Аз едва ли ще се справя и за месец, но наистина е зарибяващо. Поне е пълно с уроци, а тия в w3schools.com са върховни! (Мерси, Torbalan Trolski). Php не е много по-различно от C, не е като VB.
Моля. Ако се оправяш с event driven програмиране php е доста по-лесно. VB = shit C# rulez.
 
От: От: Искам да уча PHP и да правя сайтове сам

Оправи си в главата асоциативните масиви, това не си го срещал преди :D
А ги има почти навсякъде де що се пише за уеб - php, perl etc.


После осъзнай суперглобалните променливи.


Моля. Ако се оправяш с event driven програмиране php е доста по-лесно. VB = shit C# rulez.
Мерси! Веднага се изстрелвам към w3schools да прегледам какво имат за асоциативни масиви. Ето им го примера:
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");
Приличат малко на 2Д-масивите. Значи асоцитивните масиви заместват индекса с някаква стойност ли... или нещо такова. И вървят по двойки, като първата стойност и викат "key". T.e. това е ключ към стойност, нали.
Тия ги разбрах горе-долу.
А какво им е общото с $_GET и $_POST?
 
От: От: Искам да уча PHP и да правя сайтове сам

Мерси! Веднага се изстрелвам към w3schools да прегледам какво имат за асоциативни масиви. Ето им го примера:
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");
Приличат малко на 2Д-масивите. Значи асоцитивните масиви заместват индекса с някаква стойност ли... или нещо такова. И вървят по двойки, като първата стойност и викат "key". T.e. това е ключ към стойност, нали.
?
Не са само 2D

PHP:
$aplle = array( 'color' => 'red', 'taste' => 'sweet' );
$lemon = array( 'color' => 'yellow', 'taste' => 'sour' );

$fruits = array( 'aplle' => $aplle,  'lemon ' => $lemon );
echo "<pre>";
print_r($fruits );
echo "</pre>";

А какво им е общото с $_GET и $_POST?
PHP:
echo "<pre>";
print_r($__POST);
echo "</pre>";
И сам ще видиш ...

PHP:
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");

foreach( $age as $k => $v) {
       echo "$k - $v";
}
Ето ти нещо, което ще използваш постоянно.

Хайде троши си главата, имаш материал за смилане :cry:
 

Горе