- 1
- 2
- 3
- 4
- 5
$data = $DB->...
reset($data);
while (list(, $row) = each($data)) {
// do somethig with $row
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+156
$data = $DB->...
reset($data);
while (list(, $row) = each($data)) {
// do somethig with $row
}
Я не понимаю, почему просто не использовать foreach?!
+166
<?php
if($ssh->login($user_p,$pass_p,$ip_p,$port_p) ){
sleep(3);
$ssh->exec_cmd('php /var/www/cron.php;');
sleep(3);
$ssh->exec_cmd('php /var/www/cron.php;');
sleep(3);
$ssh->exec_cmd('php /var/www/cron.php;');
sleep(3);
$ssh->exec_cmd('php /var/www/cron.php;');
sleep(3);
$ssh->exec_cmd('php /var/www/cron.php;');
sleep(3);
$ssh->exec_cmd('php /var/www/cron.php;');
sleep(3);
$ssh->exec_cmd('php /var/www/cron.php;');
sleep(3);
$ssh->exec_cmd('php /var/www/cron.php;');
sleep(3);
$ssh->exec_cmd('php /var/www/cron.php;');
sleep(3);
$ssh->exec_cmd('php /var/www/cron.php;');
sleep(3);
$ssh->exec_cmd('php /var/www/cron.php;');
sleep(3);
$ssh->exec_cmd('php /var/www/cron.php;');
sleep(3);
$ssh->exec_cmd('php /var/www/cron.php;');
sleep(3);
$ssh->exec_cmd('php /var/www/cron.php;');
sleep(3);
$ssh->exec_cmd('php /var/www/cron.php;');
sleep(3);
$ssh->exec_cmd('php /var/www/cron.php;');
sleep(3);
$ssh->exec_cmd('php /var/www/cron.php;');
sleep(3);
$ssh->exec_cmd('php /var/www/cron.php;');
sleep(1);
$ssh->exec_cmd('php /var/www/reinfo.php;');
$ssh->disconnect();
}
Это файл /var/www/reinfo.php.
Задача в кроне на выполнение этого файла:
0,2,4,6,8,10,13,15,17,19,21,23,25,27,29, 31,33,35-36,38,40,42,44,46,48,50,52,54,56,58 * * * * php /var/www/reinfo.php
+155
public function getByAllParameters()
{
$fields = array_keys($this->getFields());
unset($fields[0]);
sort($fields);
if($this->getByConditions(array('id_user', 'status', 'card_bin', 'card_suffix', 'id_card_type', 'card_token'))){
$processing = new Processing();
$processing->id = $this->id_processing;
return $processing->getByPrimary() && $processing->enabled == 1;
}
return false;
}
+157
public function toArray()
{
$that = $this;
$profile = $this->getProfile();
return [
'sex' => $profile->getSex(),
'distance' => (int) $profile->get($profile::FIELD_DISTANCE),
'balance' => new Object_Response_Model_User_Balance($profile->get($profile::FIELD_BALANCE)),
'payments' => call_user_func(function() use ($that) {
$return = [];
$checkoutTypes = $that->getRelationCheckoutTypes()->find_all()->as_array();
foreach($checkoutTypes as $checkoutType) {
if (json_decode($checkoutType->data)[0]->value) {
$return[] = $checkoutType;
}
}
return $return;
}),
'vk' => $this->getRelationSocial()->getProfileUrl(),
'validate' => $this->getValidate()
];
};
Автор: просто php нам дало анонимные функции, почему бы ими не пользоваться?
+151
public function toArray()
{
$that = $this;
$profile = $this->getProfile();
return [
'sex' => $profile->getSex(),
'distance' => (int) $profile->get($profile::FIELD_DISTANCE),
'balance' => new Object_Response_Model_User_Balance($profile->get($profile::FIELD_BALANCE)),
'payments' => call_user_func(function() use ($that) {
$return = [];
$checkoutTypes = $that->getRelationCheckoutTypes()->find_all()->as_array();
foreach($checkoutTypes as $checkoutType) {
if (json_decode($checkoutType->data)[0]->value) {
$return[] = $checkoutType;
}
}
return $return;
}),
'vk' => $this->getRelationSocial()->getProfileUrl(),
'validate' => $this->getValidate()
];
};
+154
$a = null;
var_dump($a, $a[0], $a); // NULL, NULL, NULL // what the fuck?
$a[0] = null;
var_dump($a); // array(0 => NULL)
"PHP и type juggling", том третий. При этом на первый вызов $a[0] не ругается, будто при приведении NULL к пустому массиву в нем появляется нулевой элемент.
+154
class Session {
.....
public function getIdUser()
{
if ($this->isAnonymous()) {
return null;
}
return (int)$this->attributes[self::ATTR_ID_USER];
}
public function isAnonymous()
{
return empty($this->attributes[self::ATTR_ID_USER]);
}
....
}
............
$userId = $session->isAnonymous() ? null : (int)$session->getIdUser();
+154
class Registration{
protected $data;
protected $linc = "reg.php";
protected $v_log;
protected $query_login;
protected $v_pass;
protected $v_r_pass;
protected $v_pass_r_pass;
protected $v_mail;
public function __construct() {
$this->data = array('login'=> NULL, 'password'=> NULL, 'r_password'=> NULL, 'mail'=> NULL);
foreach($this->data as $key => $val) {
$this->data[$key] = $_POST[$key];
}
$this->v_log = $this->ver_login($this->data['login']);
$this->v_pass = $this->ver_pass($this->data['password']);
$this->v_r_pass = $this->ver_r_pass($this->data['r_password']);
$this->v_pass_r_pass = $this->ver_pass_r_pass($this->data['password'],$this->data['r_password']);
$this->v_mail = $this->ver_mail($this->data['mail']);
$this->error_reporting($this->v_log,$this->v_pass,$this->v_r_pass,$this->v_pass_r_pass,$this->v_mail, $this->error_log($this->linc));
}
protected function error_log($linc){
return("<p>В поле введены неверные данные!</p></br>"
. "<form action='$linc' metod='get'>"
. "<p>Вернуться и проверить<input type = 'submit' value = 'вернуться'></p>"
. "</form>");
}
protected function ver_login($login) {
if(empty($login) or (!preg_match("/^\A(\w){6,20}\Z/", $login))) {
$login = FALSE;
unset($login);
}else{
$login == TRUE;
$this->ver_db($login);
return($login);
}
}
protected function ver_db($log) {
$q = mysql_query("SELECT id FROM users WHERE login = '$log'");
$f = mysql_fetch_array($q);
if(empty($f['id']) or $f['id'] == '') {
return($log);
}else{
echo('Есть такой');
}
}
protected function ver_pass($pass) {
if(empty($pass) or (!preg_match("/^\A(\w){6,20}\Z/", $pass))) {
$pass == FALSE;
unset($pass);
}else {
$pass == TRUE;
$pass = md5($pass);
return($pass);
}
}
protected function ver_r_pass($r_pass) {
if(empty($r_pass) or (!preg_match("/^\A(\w){6,20}\Z/", $r_pass))) {
$r_pass == FALSE;
unset($r_pass);
}else {
$r_pass == TRUE;
$r_pass = md5($r_pass);
return($r_pass);
}
}
protected function ver_pass_r_pass($pass,$r_pass) {
if($pass != $r_pass) {
return(FALSE);
}else {
return (TRUE);
}
}
protected function ver_mail($mail) {
if(empty($mail) or (!preg_match("/^[a-zA-Z0-9_\.\-]+@([a-zA-Z0-9\-]+\.)+[a-zA-Z]{2,6}$/", $mail))) {
$mail == FALSE;
unset($mail);
}else {
$mail == TRUE;
return($mail);
}
}
protected function reg_ins($log,$pass,$mail) {
$date = date("d.m.y");
$const = ACCES_KEY_DEFAULT;
$ins_query = "INSERT INTO users(login,password,mail,date,acces) VALUES ('$log','$pass','$mail','$date','$const')";
$insert = mysql_query($ins_query);
if(!$insert){
echo('error');
} else {
echo('ok');
}
}
protected function error_reporting($log,$pass,$r_pass,$pass_r_pass,$mail,$error) {
if($log == FALSE or $pass == FALSE or $r_pass == FALSE or $pass_r_pass == FALSE or $mail == FALSE){
echo($error);
} else {
//выполняем если все данные введены верно
$this->reg_ins($log, $pass, $mail);
}
:)
+155
// Отладочная информация
if(1)
{
print "<!--\r\n";
$time_end = microtime(true);
$exec_time = $time_end-$time_start;
if(function_exists('memory_get_peak_usage'))
print "memory peak usage: ".memory_get_peak_usage()." bytes\r\n";
print "page generation time: ".$exec_time." seconds\r\n";
print "-->";
}
Simpla CMS, красавцы! :D
+158
<?php
include 'config.php';
$title = "Форум - $maintitle";
$topic = $_GET['topic'];
$board = $_GET['board'];
$main = $_GET['main'];
include 'core/funcs.php';
include 'core/pdoconnect.php';
include 'te/heads.php';
echo '
<div class="clear"></div>
<!-- Content Section -->
<div id="content_sec">
<!-- Column 1 -->
<div class="col1">
<!-- Featured Playlist -->
<div class="featured_playlist">
<h3 class="heading">',$title,'</h3>
';
if (isset($topic)){
echo '<table>
<tbody>
<tr><th> Тема</th><th>Автор</th><th>Посл.обн.</th>
</tr>';
}
if ($board > 0){
echo '<table>
<tbody>
<tr><th> Тема</th><th>Автор</th><th>Посл.обн.</th>
</tr>';
$prepare = $db->prepare("SELECT * from `forum` where `board_id` = :bo_id order by `last_update` DESC");
$prepare->bindParam(":bo_id", $board, PDO::PARAM_INT);
$prepare -> execute();
//print_r($prepare->errorinfo());
if ($prepare->rowCount() == 0){
echo '<p class = "error-box">В этом разделе еще не создано ни одной темы!</p>';
}else{
while($bo = $prepare->fetch(PDO::FETCH_BOTH)){
echo '<tr><td><a href="forum-topic',$bo['id'],' "> ',$bo['title'],' </a></td><td> ',$bo['author'],'</td><td> ',$bo['last_author'],'</td></tr>';
}
}
}
if (isset($_GET['main'])){
$i = 1;
echo '
<table>
<tbody>
<tr>
<th>Основной</th><th>Новое</th>
</tr>
<tr><td><a href = "forum-board',$i++,' ">Работа сайта</a></td><td>',$last['0'],'</td></tr>
<tr><td><a href = "forum-board',$i++,' ">Пожелания и предложения</a></td><td>',$last['1'],'</td>
<tr><th>Общение</th><th>Новое</th></tr>
<tr><td><a href = "forum-board',$i++,' ">Общение</a></td><td>',$last['2'],'</td></tr>
<tr><th>Работа</th><th>Новое</th></tr>
<tr><td><a href = "forum-board',$i++,' ">Оффтоп</td><td>$last['3']</td></tr>
<tr><td><a href = "forum-board',$i++,' ">Студенты</td><td>$last['4']</td></tr>
<tr><td><a href = "forum-board',$i++,' ">Преподаватели</td><td>$last['5']</td></tr>
<tr><td><a href = "forum-board',$i++,' ">Помощь</td><td>$last['6']</td></tr>
<tr><td><a href = "forum-board',$i++,' ">Литература</td><td>$last['7']</td></tr>
';
}
echo '</tbody></table></div></div>';
include 'te/foot.php';
?>
В общем, добрался до исходников сайта нашего инста.
Сам сайт имеет всего несколько частей - форум, лента новостей и ЛК.
Это скрипт "форума".
К слову, написано преподавателем со стажем работы 6 лет, как сам он нам доказывал и доказывает - часто фрилансит и все довольны. Чет не верится.
И этот человек учит других...