Въпроси за php

Galli

Registered
Разглеждам този урок http://web-tourist.net/login/login/view.php?st=1150 и по-точно ban.php.
Въпросите ми не са върху начина на работа на скрипта.
Пробвах го на freehostia и на XAMPP.
В първия случай си работи идеално, но във втория се наложи да направя промени, за да заработи.
Първо не искаше да записва в БД. Оправи се, когато това $vreme_2 го направих така $vreme2. Мисля, че проблемът е в ENT_QUOTES. Може ли някой да ми обясни какво прави ENT_QUOTES, защото от php.net нищо не разбрах. И ако не е там проблема, къде може да е?
Другият проблем беше с изтриването на бан. Оправи се като промених това $type == "del" така $type = "del".
Въпросът ми е тези проблеми от настойката на php-то ли идват, защото имам скриптове, които работят на XAMPP-a, но пък във freehostia не работят (другаде не съм пробвал) или може би от версията на php?
 
1во..
м/у $vreme2 и $vreme_2 няма значение кое ще се използва има си правила за променливите 1 от тях е да не почва с цифра т.е. $12 и тн. $____ <- и това работи $_2 и това би трябвало да работи така , че не виждам там проблем.Ако не се лъжа.
за.. ENT_QUOTES
това е просто аргумент или атрибут ли кво се каваше на функцията htmlspecialchars .
Води се стил на кавичките :)
по дефулт е ENT_COMPAT т.е. ако не в въведен аргумент единствено превръща 2ната кавичка " в АНСИ кода и т.е. " единичната кавичка не се третира.
Ако е написано ENT_QUOTES както в случая...се третират и 2те кавички т.е. 2ната става " , а единичната - ' ако не се лъжа.
Има и 3ти вид ENT_NOQUOTES който не третира нито една кавичка т.е. ги пропуска.
Невиждам проблема къде може да е да не иска да записва..
За това $type..
Като начало виж този урок за операторите
http://web-tourist.net/login/login/view.php?st=971
значи в if както е в случая
if ($type == "del")
така както виждаш е написано ==
виж в урока какво пише:
== Равно на $var == $var2 Връша TRUE (вярно) ,ако първата стойност е равна на втората

има разлика м/у = и ==
с 1то присвояваш т.е.
все едно имаш
$asd = "del";
един вид
if ($type = "del") вина ги ще върне true и скрипта ще продължи
Настройки разбира се...на почти всеки хост са горе долу различни
Може и от версията на пхп-то да е има функции които работят само на версия 5 , а пр. на хоста е 4 и е нормално да изпищи грешка..
та...
надявам се съм бил изчерпателен. :)
 
Мерси, че отдели време. Това с кавичките го разбрах.
Ще погледна и урока. За променливата видях, че в тази част на скрипта:
if ($vreme2 == "1"){ /// Ако сме избрали да сложим бан за ЧАС
$izticha = $time + ($vreme*3600); /// изчисляваме до кога ще е валиден бан-а
$ed = "часа";
} elseif ($vreme2 == "2"){ /// Ако сме избрали да сложим бан за ДЕН
$izticha = $time + ($vreme*86400); /// изчисляваме до кога ще е валиден бан-а
$ed = "дни";
} elseif ($vreme2 == "3"){ /// Ако сме избрали да сложим бан за СЕДМИЦА
$izticha = $time + ($vreme*604800); /// изчисляваме до кога ще е валиден бан-а
$ed = "седмици";
} elseif ($vreme2 == "4"){ /// Ако сме избрали да сложим бан за ВИНАГИ
$ed = "винаги";
се използва $vreme2 и затова го направих така.
Още веднъж мерси.
 
$vreme2 се използва за дали е час/ден/седмица/за винаги ;)
То не се записва в базата данни :wink:
 

Горе