- 1
String url = m_launchUrl.replaceAll(" ", "%20");
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+79
String url = m_launchUrl.replaceAll(" ", "%20");
Percent-encode по-Адобовски.
http://svn.apache.org/repos/asf/incubator/flex/trunk/modules/debugger/src/java/flash/tools/debugger/concrete/PlayerSession.java
+79
if ($type['my_event']) {
$select->where('1=1)))');
} else {
$select->where('1=1))');
}
Индусы..
+79
<?
if(!$GLOBAL)
{
header('Location: http://'.$_SERVER['SERVER_NAME'].'/');
}
session_start();
require_once($_SERVER['DOCUMENT_ROOT']."/global/constants.php");
require_once($_SERVER['DOCUMENT_ROOT']."/global/functions.php");
connect_SQL();
//$ref = $_SERVER['HTTP_REFERER'];
$ref = "http://".$_SERVER['SERVER_NAME'];
//var_dump($_POST);
if(isset($_POST['auth_go']))
{
$login = (isset($_POST['login'])) ? mysql_real_escape_string($_POST['login']) : '';
$query = "SELECT `salt`
FROM `users`
WHERE `login`='{$login}'
LIMIT 1";
$sql = mysql_query($query) or die(mysql_error());
if (mysql_num_rows($sql) == 1)
{
$row = mysql_fetch_assoc($sql);
// итак, вот она соль, соответствующая этому логину:
$salt = $row['salt'];
// теперь хешируем введенный пароль как надо и повторям шаги, которые были описаны выше:
$password = md5(md5($_POST['password']) . $salt);
// и пошло поехало...
// делаем запрос к БД
// и ищем юзера с таким логином и паролем
$query = "SELECT `id`
FROM `users`
WHERE `login`='{$login}' AND `password`='{$password}'
LIMIT 1";
$sql = mysql_query($query) or die(mysql_error());
// если такой пользователь нашелся
if (mysql_num_rows($sql) == 1)
{
// то мы ставим об этом метку в сессии (допустим мы будем ставить ID пользователя)
$row = mysql_fetch_assoc($sql);
$_SESSION['user_id'] = $row['id'];
// если пользователь решил "запомнить себя"
// то ставим ему в куку логин с хешем пароля
$time = 86400; // ставим куку на 24 часа
if (isset($_POST['remember']))
{
setcookie('login', $login, time()+$time, "/");
setcookie('password', $password, time()+$time, "/");
}
// и перекидываем его на закрытую страницу
if(!empty($ref))
{
if( (strstr($ref,"error"))||(strstr($ref,"register"))||(strstr($ref,"forgetyourpassword")))
{
// //header('Location: http://'.$_SERVER['SERVER_NAME'].'/');
}
else
{
// // header('Location: '.$ref.'/');
}
}
else
{
// // header('Location: http://'.$_SERVER['SERVER_NAME'].'/');
}
//echo "Заебиок АВТОРИЗОВАН!<br>";
//exit;
// не забываем, что для работы с сессионными данными, у нас в каждом скрипте должно присутствовать session_start();
}
else
{
//die('Такой логин с паролем не найдены в базе данных. И даём ссылку на повторную авторизацию. — <a href="login.php">Авторизоваться</a>');
header('Location: http://'.$_SERVER['SERVER_NAME'].'/error/?no=2');
// // header('Location: http://'.$_SERVER['SERVER_NAME'].'/error');
}
}
else
{
//die('пользователь с таким логином не найден, даём ссылку на повторную авторизацию. — <a href="login.php">Авторизоваться</a>');
header('Location: http://'.$_SERVER['SERVER_NAME'].'/error/?no=3');
// // //header('Location: http://'.$_SERVER['SERVER_NAME'].'/error');
}
//echo "//--проверяем валидность...<br>";
//echo "//--и отправляем на куда то, с объявлением......<br>";
//echo "переадресация<br>";
//echo "<a href=http://".DSITE.">".DSITE."</a>";
Найдено на одном из сайтов полит партии РФ :)
+79
import java.util.*;
class Euler32 {
public static void main(String[] args) {
int total=0;
LinkedList<Integer> remDigits=new LinkedList<Integer>();
for(int n=1;n<=9;n++)
remDigits.add(new Integer(n));
for(int n9=2;n9<9;n9++){ //starting digit can't be 1 or 2
int thouC=(remDigits.get(n9)).intValue();
remDigits.remove(n9);
for(int n8=0;n8<8;n8++){
int hundC=(remDigits.get(n8)).intValue();
remDigits.remove(n8);
for(int n7=0;n7<7;n7++){
int tenC=(remDigits.get(n7)).intValue();
remDigits.remove(n7);
for(int n6=0;n6<6;n6++){
int oneC=(remDigits.get(n6)).intValue();
remDigits.remove(n6);
int c=1000*thouC+100*hundC+10*tenC+oneC;
boolean found=false;
int n5=0;
while((n5<5)&&(found==false)){
int ab1=(remDigits.get(n5)).intValue();
remDigits.remove(n5);
int n4=0;
while((n4<4)&&(found==false)){
int ab2=(remDigits.get(n4)).intValue();
remDigits.remove(n4);
int n3=0;
while((n3<3)&&(found==false)){
int ab3=(remDigits.get(n3)).intValue();
remDigits.remove(n3);
int n2=0;
while((n2<2)&&(found==false)){
int ab4=(remDigits.get(n2)).intValue();
remDigits.remove(n2);
int ab5=(remDigits.get(0)).intValue();
int a3=100*ab1+10*ab2+ab3;
int a4=1000*ab1+100*ab2+10*ab3+ab4;
int b2=10*ab4+ab5;
int b1=ab5;
if((a3*b2)==c){
found=true;
total+=c;
System.out.println(c+" = "+a3+"x"+b2);
}
else if((a4*b1)==c){
found=true;
total+=c;
System.out.println(c+" = "+a4+"x"+b1);
}
remDigits.add(n2,new Integer(ab4));
n2++;
}
remDigits.add(n3,new Integer(ab3));
n3++;
}
remDigits.add(n4,new Integer(ab2));
n4++;
}
remDigits.add(n5,new Integer(ab1));
n5++;
}
remDigits.add(n6,new Integer(oneC));
}
remDigits.add(n7,new Integer(tenC));
}
remDigits.add(n8,new Integer(hundC));
}
remDigits.add(n9,new Integer(thouC));
}
System.out.println(total);
}
}
http://projecteuler.net/problem=32
http://projecteuler.net/thread=32;page=2
>My code is absolutely hideous, but it works and it's fast.
Извиняюсь за длинный пост, но это просто шедевр, я не мог это не запостить!
+79
for (; e.hasMoreElements();)
смайлокод.
вот почему не while, объясните мне?
+79
//первый сайт - интернет магазин
//отрывок из функции редактирования, функции добавления, функции удаления товаров, в таблицу "export_catalogue" каждая строка - это "поле товара" и "новое значение поля"
//что-то на подобие лога изменений. Конечно копипаст всех полей товаров.
$this->insert($table = "`export_catalogue`", $fields = "`action`, `table`, `element`, `fields`, `value`", $values="'update', 'catalogue_files', '$catalogue_id', 'name_rus', '$name_rus'");
$this->insert($table = "`export_catalogue`", $fields = "`action`, `table`, `element`, `fields`, `value`", $values="'update', 'catalogue_files', '$catalogue_id', 'name_ger', '$name_ger'");
//файл xml_create_catalogue.php, который запускается по крону каждые 5 минут, создаёт xml файлы. Каждый файл содержит в себе изменение одного поля товара
$result_export_array = $global->select_all($fields = "*", $table = "`export_catalogue`", $where = "`create` = '0' ORDER BY `id` ASC");
for ($i=0; $i<count($result_export_array); $i++){
$doc = new DOMDocument('1.0', 'utf-8');
$doc->formatOutput = true;
...
// название fields - не мой коммент
$fields = $doc->createElement('fields');
$fields = $root->appendChild($fields);
// данные element - не мой коммент
$data_fields = $doc->createTextNode($result_export_array[$i]['fields']);
$data_fields = $fields->appendChild($data_fields);
...
//если картинка или файл товара, то файл кодируется в бэйс64 и записывается в ячейку xml
$value_default = $result_export_array[$i]['value'].'photo_data'.base64_encode($contents);
$value_convert = mb_convert_encoding($value_default, "UTF-8", "Windows-1251");
$data_value = $doc->createTextNode($value_convert);
...
//почетка, что файл экспорта создан
$global->update($table = "`export_catalogue`", $fields = "`create` = '1'", $where = "`id` = '".$result_export_array[$i]['id']."'");
}
//файл xml_upload_catalogue.php, крон - 5 минут, копирует созданные xml файлы на фтп второго сайта
$result_export_array = $global->select_all($fields = "*", $table = "`export_catalogue`", $where = "`upload` = '0' ORDER BY `id` ASC");
for ($i=0; $i<count($result_export_array); $i++){
... //тут идёт копирование файлов по фтп
//пометка, что файл загружен на второй сайт
$global->update($table = "`export_catalogue`", $fields = "`upload` = '1'", $where = "`id` = '$file_id'");
}
//второй сайт - интернет магазин
//xml_import_catalogue.php по крону, проверяется наличие xml файлов и поля импортируются в каталог
//цикл по списку файлов
foreach ($file_list as $key => $file_name) {
//в таблицу import_catalogue записывается, какие файлы были импортированны
$next_file_array = $global->select_only($fields = "*", $table = "`import_catalogue`", $where = "`id` != '0' ORDER BY `id` DESC LIMIT 1");
//причем имя файла(числовое) должно быть обязательно на 1 больше последнего записанного в таблице
$next_file = intval($next_file_array['id'] + 1).'.xml';
...
//апдейт поля товара
$value_convert = mb_convert_encoding($value_xml, "Windows-1251", "UTF-8");
$global->update($table = "`$table_xml`", $fields = "`$fields_xml` = '".$global->sql_prepare($value_convert)."'", $where = "`id` = '$element_xml'");
...
//помечаем, что файл импортирован и удаляем
$global->insert($table = "`import_catalogue`", $fields = "`joined`", $values="'$joined'");
}
Самый идеальный экспорт товаров из одного сайта в другой. Приведены отрывки кода из двух сайтов на каждом этапе экспорта
+79
function exeSQL($inSQL,$withDebug = true,$iniDb = '') {
global $db;
$tmp_db = $db;
if ($iniDb != '') {
$tmp_db = $iniDb;
}
if (isset($_SESSION['HIDDEN']) and is_numeric($_SESSION['HIDDEN']['HIDDEN']) and $_GET['HIDDEN'] == 'YES') {
echo "
<br>---------------------------------------------------------------------
BEG_TIME: " . date('h:i:s A');
print "<pre>";
print_r($inSQL);
echo "<br>END_TIME: " . date('h:i:s A') . "<br>
------------------------------------------------------------------------";
}
$result = mysql_query($inSQL, $tmp_db);
$error = mysql_error($tmp_db);
if ($error) {
if (strpos($inSQL, 'USD-CODED_RECORD:V') !== false) {
$strSQL = util::decodeRecord($inSQL);
exeSQL($strSQL, $withDebug);
return ;
}
if ($withDebug) {
// if (!is_dir("d:/temp") and $_GET['debug2'] != 'Y') {
// echo file_get_contents($_SERVER['DOCUMENT_ROOT'] . '/index.html');
// die();
// }
echo $error;
print "<pre>";
print ($inSQL);
die();
}
}
// -- CHECK IF IT WAS INSERTION ---
// -- TRY TO RETURN DATASET
$arr = @mysql_fetch_array($result);
// -- NO RESULT AT ALL
if (is_array($arr)) {
// -- RETURN AS VARCHAR ----
if (count($arr) <= 2) return $arr[0];
// FORM RESULT ARRAY TO RETURN TO USER
$res = array();
while ($arr) {
$res[] = $arr;
$arr = mysql_fetch_array($result);
}
return $res;
} else {
return '';
$id = mysql_insert_id($tmp_db);
if ($id > 0) {
return $id;
}
}
return '';
}
Работа с СУБД.
+79
if ("5".equals(pid)) {
} else {
if ("1".equals(pid) || "4".equals(pid)) {
type = "fl";
} else if ("6".equals(pid)){
type = "nw";
}else {
type = "ul";
}
}
Из базы формируется дерево элементов для меню. Там же есть какая-то сортировка. Меняем в базе сортировку, а все работает по-старому. Лезем копать и находим.
+79
public class Executer {
private Class cClass;
private Method method;
private static final String methodName = "execute";
............................................................................................
private void getExecutableMethod() {
Method[] methods = cClass.getDeclaredMethods();
for (Method tempM : methods) {
if (tempM.getName().equals(methodName)) {
method = tempM;
break;
}
}
}
}
креативненько
+79
Account account = session.load(277l);
=)