- 1
Как-то долго на PHP говнокода не появляется, все научились писать что ли?
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+142
Как-то долго на PHP говнокода не появляется, все научились писать что ли?
+142
public function api() {
...
if ($this->validate()) {
if ($store_info) {
$url = $store_info['ssl'];
} else {
$url = HTTPS_CATALOG;
}
if (isset($this->session->data['cookie']) && isset($this->request->get['api'])) {
...
$curl = curl_init();
// Set SSL if required
if (substr($url, 0, 5) == 'https') {
curl_setopt($curl, CURLOPT_PORT, 443);
}
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLINFO_HEADER_OUT, true);
curl_setopt($curl, CURLOPT_USERAGENT, $this->request->server['HTTP_USER_AGENT']);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_FORBID_REUSE, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_URL, $url . 'index.php?route=' . $this->request->get['api'] . ($url_data ? '&' . http_build_query($url_data) : ''));
if ($this->request->post) {
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($this->request->post));
}
curl_setopt($curl, CURLOPT_COOKIE, session_name() . '=' . $this->session->data['cookie'] . ';');
$json = curl_exec($curl);
curl_close($curl);
API в опенкарте. Ну, короч, приходит пользователь, дергает АПИ, а я сам в контроллере дергаю свое АПИ. Такая практика.
https://github.com/opencart/opencart/blob/4a151334efc702729071bd8d45a7e4af4e07b3ef/upload/admin/controller/sale/order.php#L2152
+142
<?php
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
session_start();
require "db.php";
$id = $_GET["id"];
pagedel($id);
header ("location: index.php");
function pagedel($id){ // функция удаления страниц
$sql = "DELETE FROM mesage WHERE id=$id";
mysql_query($sql) or die (mysql_error());
}
?>
не работает фукция удаления строки
+142
<form method="post" action="/php/form.php" id="add_form">
<label>Как к Вам обращаться:</label>
<div class="row">
<div class="col-lg-6">
<div class="input-group">
<span class="input-group-addon glyphicon glyphicon-user"></span>
<input type="text" class="form-control" name="first_name" placeholder="Имя" aria-label="...">
</div><!-- /input-group -->
</div><!-- /.col-lg-6 -->
</div><!-- /.row -->
<label>Email (не публикуется):</label>
<div class="input-group">
<span class="input-group-addon glyphicon glyphicon-envelope " id="basic-addon1"></span>
<input type="text" class="form-control" name="email" placeholder="Электронная почта" aria-describedby="basic-addon1">
</div>
<label>Телефон (не публикуется):</label>
<div class="input-group">
<span class="input-group-addon glyphicon glyphicon-phone"></span>
<input type="text" class="form-control" name="phone" placeholder="телефон" aria-describedby="basic-addon1">
</div>
</div>
<center><label>Опишите суть ситуации:</label></center>
<div>
<center><textarea name="text" required="" rows="8" style="width: 510;"></textarea></center>
</div>
<dl>
</dl>
</div>
<div class="modal-footer"><center>
<button type="button" class="btn btn-danger" data-dismiss="modal">Отказаться</button>
<button type="submit" class="btn btn-success" data-toggle="tooltip" data-placement="right" title="После Вашей заявки,мастер свяжеться с Вами в ближайшее время">Заказать мастера</button>
</center>
</div>
</div>
</form>
вот сама форма
+142
URxvt*foreground: #C0C0C0
Вот что монокай с urxvt делает.
+142
String tp22 = "";
int v1 = (Math.random(8))+1;
if (v1=1)
{ tp22.charAt(1)="a";}
if (v1=2)
{ tp22.charAt(1)="b";}
if (v1=3)
{ tp22.charAt(1)="c";}
if (v1=4)
{ tp22.charAt(1)="d";}
if (v1=5)
{ tp22.charAt(1)="e";}
if (v1=6)
{ tp22.charAt(1)="f";}
if (v1=7)
{ tp22.charAt(1)="g";}
if (v1=8)
{ tp22.charAt(1)="h";}
if (v1=9)
{ tp22.charAt(1)="i";}
Получаем случайную букву.
+142
typedef enum {
INIT1=0, INIT2, INIT3, INIT4, INIT5, INIT6, INITN,
BIND1, BIND2, BIND3, BIND4, BIND5, BIND6, BINDN,
YIELD1, YIELD2, YIELD3, YIELD4, YIELD5, YIELD6, YIELDN,
COMPARE, CHECK, FILTER, CFILTER, PFILTER, CHOOSE, NOOP, CONTINUE,
GET_ENODE,
GET_CGR1, GET_CGR2, GET_CGR3, GET_CGR4, GET_CGR5, GET_CGR6, GET_CGRN,
IS_CGR
} opcode;
...
...
...
switch (m_pc->m_opcode) {
case INIT1:
m_app = m_registers[0];
if (m_app->get_num_args() != 1)
goto backtrack;
m_registers[1] = m_app->get_arg(0);
m_pc = m_pc->m_next;
goto main_loop;
case INIT2:
m_app = m_registers[0];
if (m_app->get_num_args() != 2)
goto backtrack;
m_registers[1] = m_app->get_arg(0);
m_registers[2] = m_app->get_arg(1);
m_pc = m_pc->m_next;
goto main_loop;
case INIT3:
m_app = m_registers[0];
if (m_app->get_num_args() != 3)
goto backtrack;
m_registers[1] = m_app->get_arg(0);
m_registers[2] = m_app->get_arg(1);
m_registers[3] = m_app->get_arg(2);
m_pc = m_pc->m_next;
goto main_loop;
case INIT4:
m_app = m_registers[0];
if (m_app->get_num_args() != 4)
goto backtrack;
m_registers[1] = m_app->get_arg(0);
m_registers[2] = m_app->get_arg(1);
m_registers[3] = m_app->get_arg(2);
m_registers[4] = m_app->get_arg(3);
m_pc = m_pc->m_next;
goto main_loop;
case INIT5:
m_app = m_registers[0];
if (m_app->get_num_args() != 5)
goto backtrack;
m_registers[1] = m_app->get_arg(0);
m_registers[2] = m_app->get_arg(1);
m_registers[3] = m_app->get_arg(2);
m_registers[4] = m_app->get_arg(3);
m_registers[5] = m_app->get_arg(4);
m_pc = m_pc->m_next;
goto main_loop;
case INIT6:
m_app = m_registers[0];
if (m_app->get_num_args() != 6)
goto backtrack;
m_registers[1] = m_app->get_arg(0);
m_registers[2] = m_app->get_arg(1);
m_registers[3] = m_app->get_arg(2);
m_registers[4] = m_app->get_arg(3);
m_registers[5] = m_app->get_arg(4);
m_registers[6] = m_app->get_arg(5);
m_pc = m_pc->m_next;
goto main_loop;
case INITN:
m_app = m_registers[0];
m_num_args = m_app->get_num_args();
if (m_num_args != static_cast<const initn *>(m_pc)->m_num_args)
goto backtrack;
for (unsigned i = 0; i < m_num_args; i++)
m_registers[i+1] = m_app->get_arg(i);
m_pc = m_pc->m_next;
goto main_loop;
Из изходников STM-солвера Z3
https://github.com/Z3Prover/z3/blob/master/src/smt/mam.cpp#L2298
Почему нельзя было оставить только вариант INITN? Цикл отбирает так много ресурсов?
+142
class Ship{
public static void main(String []args){
//бла-бла-бла
String s = Ship.getTp22();
}
String getTp22(){
public String tp22 = "-*";
int v1 = (Math.random(8))+1;
if (v1=1)
{ tp22.charAt(1)="a";}
if (v1=2)
{ tp22.charAt(1)="b";}
if (v1=3)
{ tp22.charAt(1)="c";}
if (v1=4)
{ tp22.charAt(1)="d";}
if (v1=5)
{ tp22.charAt(1)="e";}
if (v1=6)
{ tp22.charAt(1)="f";}
if (v1=7)
{ tp22.charAt(1)="g";}
if (v1=8)
{ tp22.charAt(1)="h";}
if (v1=9)
{ tp22.charAt(1)="i";}
return tp22;
}
}
Гениальный способ генерации строки со случайной буквой.
+142
//Search from title,content,category,address,zipcode,city
if ($s_for !== '' && $s_cat !== '' && $s_to !== '') {
$query = "SELECT *
FROM
$wpdb->posts
INNER JOIN $wpdb->term_relationships
ON $wpdb->posts.ID = $wpdb->term_relationships.object_id
LEFT JOIN $wpdb->postmeta
ON $wpdb->posts.ID = $wpdb->postmeta.post_id
WHERE
$wpdb->posts.post_status = '$cc_post_status'
AND $wpdb->posts.post_type = '$cc_post_type'
AND ($wpdb->posts.post_title LIKE '%$s_for%'
OR $wpdb->posts.post_content LIKE '%$s_for%')
AND (($wpdb->postmeta.meta_key = '$cc_meta_address' AND $wpdb->postmeta.meta_value LIKE '%$s_to%')
OR ($wpdb->postmeta.meta_key = '$cc_meta_city' AND $wpdb->postmeta.meta_value = '$s_to')
OR ($wpdb->postmeta.meta_key = '$cc_meta_zipcode' AND $wpdb->postmeta.meta_value = '$s_to'))
AND $wpdb->term_relationships.term_taxonomy_id = {$s_cat}
GROUP BY ID {$limit}";
//Search from title,content
} elseif ($s_for !== '' && $s_cat == '' && $s_to == '') {
$query = "SELECT *
FROM
$wpdb->posts
INNER JOIN $wpdb->term_relationships
ON $wpdb->posts.ID = $wpdb->term_relationships.object_id
INNER JOIN $wpdb->terms
ON $wpdb->term_relationships.term_taxonomy_id = $wpdb->terms.term_id
WHERE
$wpdb->posts.post_status = '$cc_post_status' AND post_type = '$cc_post_type'
AND ($wpdb->terms.name = '$s_for' or post_title like '%$s_for%' or post_content like '%$s_for%')
GROUP BY ID {$limit}";
//Search from title,content and category
} elseif ($s_for !== '' && $s_cat !== '' && $s_to == '') {
$query = "SELECT $wpdb->posts.*
FROM
$wpdb->posts
INNER JOIN $wpdb->term_relationships
ON $wpdb->posts.ID = $wpdb->term_relationships.object_id
WHERE
$wpdb->posts.post_type = '$cc_post_type'
AND
$wpdb->posts.post_status = '$cc_post_status'
AND
($wpdb->posts.post_title LIKE '%$s_for%' OR $wpdb->posts.post_content LIKE '%$s_for%')
AND
($wpdb->term_relationships.term_taxonomy_id = {$s_cat})
GROUP BY ID {$limit}";
//Search from category,zip,address and city
} elseif ($s_for == '' && $s_cat !== '' && $s_to !== '') {
$query = "SELECT $wpdb->posts.*
FROM
$wpdb->posts
INNER JOIN $wpdb->postmeta
ON $wpdb->posts.ID = $wpdb->postmeta.post_id
INNER JOIN $wpdb->term_relationships
ON $wpdb->posts.ID = $wpdb->term_relationships.object_id
WHERE
$wpdb->posts.post_type = '$cc_post_type'
AND $wpdb->posts.post_status = '$cc_post_status'
AND
($wpdb->term_relationships.term_taxonomy_id = {$s_cat})
AND (($wpdb->postmeta.meta_key ='$cc_meta_address' AND $wpdb->postmeta.meta_value LIKE '%$s_to%')
OR ($wpdb->postmeta.meta_key ='$cc_meta_city' AND $wpdb->postmeta.meta_value = '$s_to')
OR ($wpdb->postmeta.meta_key ='$cc_meta_zipcode' AND $wpdb->postmeta.meta_value = '$s_to'))
GROUP BY ID {$limit}";
//Search from category
} elseif ($s_for == '' && $s_cat !== '' && $s_to == '') {
$query = "SELECT $wpdb->posts.*
FROM
$wpdb->posts
INNER JOIN $wpdb->term_relationships
ON $wpdb->posts.ID = $wpdb->term_relationships.object_id
WHERE
$wpdb->posts.post_type = '$cc_post_type'
AND $wpdb->posts.post_status = '$cc_post_status'
AND
($wpdb->term_relationships.term_taxonomy_id = {$s_cat})
GROUP BY ID {$limit}";
//Search from address,city and zipcode
} elseif ($s_for == '' && $s_cat == '' && $s_to !== '') {
$query = "SELECT $wpdb->posts.*
FROM
$wpdb->posts
INNER JOIN $wpdb->postmeta
ON $wpdb->posts.ID = $wpdb->postmeta.post_id
WHERE
$wpdb->posts.post_type = '$cc_post_type'
AND $wpdb->posts.post_status = '$cc_post_status'
AND (($wpdb->postmeta.meta_key ='$cc_meta_address' AND $wpdb->postmeta.meta_value LIKE '%$s_to%')
OR ($wpdb->postmeta.meta_key ='$cc_meta_city' AND $wpdb->postmeta.meta_value = '$s_to')
OR ($wpdb->postmeta.meta_key ='$cc_meta_zipcode' AND $wpdb->postmeta.meta_value = '$s_to'))
GROUP BY ID {$limit}";
//Search from tags,title,content and zipcode,city,address
} elseif ($s_for !== '' && $s_cat == '' && $s_to !== '') {
// And so on .... until all possible combinations of arguments
Classicraft wordpress theme ... luckily he had only 3 arguments :D
+142
function cvet(){
var i=Math.ceil(Math.random() *80);
if (i > 0 && i <= 10 ) a = 0;
if (i > 0 && i <= 10 ) b = 0;
if (i > 0 && i <= 10 ) c = 255;
if (i > 0 && i <= 10 ) d = 1;
else
if (i > 10 && i <= 20 ) a = 0;
if (i > 10 && i <= 20 ) b = 0;
if (i > 10 && i <= 20 ) c = 255;
if (i > 10 && i <= 20 ) d = 1;
else
if (i > 20 && i <= 30 ) a = 0;
if (i > 20 && i <= 30 ) b = 255;
if (i > 20 && i <= 30 ) c = 0;
if (i > 20 && i <= 30 ) d = 1;
else
if (i > 30 && i <= 40 ) a = 0;
if (i > 30 && i <= 40 ) b = 255;
if (i > 30 && i <= 40 ) c = 255;
if (i > 30 && i <= 40 ) d = 1;
else
if (i > 40 && i <= 50 ) a = 255;
if (i > 40 && i <= 50 ) b = 0;
if (i > 40 && i <= 50 ) c = 0;
if (i > 40 && i <= 50 ) d = 1;
else
if (i > 50 && i <= 60 ) a = 255;
if (i > 50 && i <= 60 ) b = 0;
if (i > 50 && i <= 60 ) c = 255;
if (i > 50 && i <= 60 ) d = 1;
else
if (i > 60 && i <= 70 ) a = 255;
if (i > 60 && i <= 70 ) b = 255;
if (i > 60 && i <= 70 ) c = 0;
if (i > 60 && i <= 70 ) d = 1;
else
if (i > 70 && i <= 80 ) a = 255;
if (i > 70 && i <= 80 ) b = 255;
if (i > 70 && i <= 80 ) c = 255;
if (i > 70 && i <= 80 ) d = 1;
Целиком: https://jsfiddle.net/allcoma/x85w48Lj/