- 1
if (!session_start()) {session_start();}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+183
if (!session_start()) {session_start();}
Случилось мне, переписывать самописную чьюто хрень, так что буду постить не по мере лени..)
+168
function IsAlphaNumeric($str)
{
$old = Array("a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "1", "2", "3", "4", "5", "6", "7", "8", "9", "0");
$new = Array("", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "");
if (str_replace($str, $old, $new) == "")
{
return (true);
}
else
{
return (false);
}
}
говно + валидация = говнодация
+161
$uploaddir = '../foto/'.$img_name_clean.'/';
$uploadfile = $uploaddir . basename($_FILES[$key]['name']);
$img_name = $_FILES[$key]['name'];
if (file_exists("../foto/".$img_name_clean."/".$img_name."")){echo "Внимание! Ошибка, в папке ".$img_name_clean." уже существует файл ".$img_name."! Пожалуста, переименуте загружаемый файл."; exit;}
if (move_uploaded_file($_FILES[$key]['tmp_name'], $uploadfile)) {
chmod('../foto/'.$img_name_clean.'/' . $img_name, 0666);
echo "Файл ".$_FILES[$key]['name']." загружен в папку ".$img_name_clean.".\n<br>";
} else {
echo "Файл ".$_FILES[$key]['name']." не загружен в папку ".$img_name_clean.".\n<br>";exit;
}
Эх, не удержался таки! Продолжение предыдущего.
+163
$img_name_clean = $_FILES[$key]['name'];
$img_name_clean = str_replace (".img","",$img_name_clean);
$img_name_clean = str_replace (".jpeg","",$img_name_clean);
$img_name_clean = str_replace (".jpg","",$img_name_clean);
$img_name_clean = str_replace (".gif","",$img_name_clean);
$img_name_clean = str_replace (".JPG","",$img_name_clean);
$img_name_clean = str_replace (".IMG","",$img_name_clean);
$img_name_clean = str_replace (".GIF","",$img_name_clean);
$img_name_clean = str_replace (".JPEG","",$img_name_clean);
if(!file_exists("../foto/".$img_name_clean."/")){mkdir("../foto/".$img_name_clean."/", 0777); chmod('../foto/'.$img_name_clean, 0777);}
+156
<!-- saved from url=(0014)about:internet -->
<?php
define('WEATHER_FILE_3_DAYS', '/meteoparse/weather.xml');
define('WEATHER_URL_3_DAYS', 'http://pogoda.by/xml2/xml-kstati.by.php');
define('BASE_PATH', $_SERVER['DOCUMENT_ROOT']);
define('DAYS_COUNT', 3);
require_once('include/weather_tools.php');
if (date('d.m.Y.h', filectime(BASE_PATH . WEATHER_FILE_3_DAYS)) != date('d.m.Y.h')) {
copy(WEATHER_URL_3_DAYS, BASE_PATH . WEATHER_FILE_3_DAYS);
}
$file = file_get_contents ('weather.xml');
$xmlWeather = simplexml_load_string($file);
$aXmlForecasts = $xmlWeather->xpath('/pogoda/CITY/FORECAST');
$aWeather = array();
$curDay = 0;
foreach($aXmlForecasts as $xmlForecast) {
$attrs = $xmlForecast->attributes();
$date = $attrs->day . '-' .
$attrs->month . '-' .
$attrs->year;
$hour = strval($attrs->hour);
if (!array_key_exists($date, $aWeather)) {
$curDay++;
if ($curDay > DAYS_COUNT) break;
$aWeather[$date] = array();
}
if (!array_key_exists($hour, $aWeather[$date])) {
$aWeather[$date][$hour] = array();
}
foreach($xmlForecast as $property => $values) {
$aWeather[$date][$hour][$property] = '';
$valuesAttr = $values->attributes();
foreach($valuesAttr as $value) {
$aWeather[$date][$hour][$property] .= strval($value);
}
}
}
foreach($aWeather as $dateKey => $date) {
foreach ($date as $hourKey => $hour) {
$aWeather[$dateKey][$hourKey]['DAYTIME'] = getDayTime($hourKey);
$aWeather[$dateKey][$hourKey]['PHENOMENA'] = getPhenomeaUrl($hour['PHENOMENA']);
$aWeather[$dateKey][$hourKey]['WIND'] = getWind($hour['WIND']);
}
}
?>
<td colspan="<?php echo count($aWeather); ?>">
<?php foreach ($aWeather as $date => $hours) : ?>
<table id="<?php echo 'table' . $date; ?>" class="hide">
<tr class="attrs">
<th></th>
<th></th>
<th>Давление</th>
<th>t, °С</th>
<th>Ветер</th>
</tr>
<?php foreach($hours as $hour => $properties) : ?>
<tr>
<td><?php echo $properties['DAYTIME']; ?></td>
<td><img src="<?php echo $properties['PHENOMENA']; ?>" /></td>
<td class="param"><?php echo $properties['PRESSURE']; ?> гПа </td>
<td class="param1"><?php echo $properties['TEMPERATURE']; ?> °C</td>
<td class="param"><?php echo $properties['WIND']; ?>  (м/с)</td>
</tr>
<?php endforeach; ?>
</table>
<?php endforeach; ?>
</td>
</tr>
</table>
</div>
<script type="text/javascript">
var weatherBox = document.getElementById('weatherBox');
weatherBox.getElementsByTagName('table')[0].getElementsByTagName('table')[0].className = "show";
</script>
#4837 Продолжение.
+159
<?php
session_start();
define('_JEXEC', 1);
$host = $_SERVER['DOCUMENT_ROOT'];
include $host.'/admin/function.php';
include $host.'/data/conf.php';
include $host.'/data/settings.php';
$templates = $system['templates'];
$content = file_get_contents($host.'/design/'.$templates.'/index.tpl');
$result = mysql_query(" SELECT * FROM news WHERE section='index' ");
$myrow = mysql_fetch_array($result);
$result2 = mysql_query(" SELECT * FROM slogan ");
$myrow2 = mysql_fetch_array($result2);
$index_news = $myrow['news'];
$title = $myrow['title'];
$description = $myrow['description'];
$keywords = $myrow['keywords'];
$menu='';
function callback($s) {$GLOBALS['menu'].=$s; }
ob_start('callback');
include $host.'/data/site_content/menu.php';
ob_end_flush();
$menu="$menu";
$content=str_replace('{templates}', $templates, $content);
$content=str_replace('{menu}', $menu, $content);
$content=str_replace('{content}', $index_news, $content);
$content=str_replace('{slogan_name}', $myrow2['slogan_name'], $content);
$content=str_replace('{slogan}',$myrow2['slogan'], $content);
$content=str_replace('{title}', $title, $content);
$content=str_replace('{description}', $description, $content);
$content=str_replace('{keywords}', $keywords, $content);
echo $content;
?>
+161
$sec_in_year = 31536000;
$sec_in_lyear = 31622400;
$sec_in_28 = 2419200;
$sec_in_29 = 2505600;
$sec_in_30 = 2592000;
$sec_in_31 = 2678400;
$sec_in_day = 86400;
$sec_in_hour = 3600;
$sec_in_min = 60;
$year_count = 1970;
$month_count = 0;
$day_count = 1;
$hour_count = 0;
$min_count = 0;
$lyear_count = 2; // Make an array of seconds per month for ease of use.
$months = array(2678400, 2419200, 2678400, 2592000, 2678400, 2592000, 2678400, 2678400, 2592000, 2678400, 2592000, 2678400);
$lmonths = array(2678400, 2505600, 2678400, 2592000, 2678400, 2592000, 2678400, 2678400, 2592000, 2678400, 2592000, 2678400);
$month_list = array('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sept', 'Oct', 'Nov', 'Dec');
while($utime >= $sec_in_year) { // Count the year since 1970.
if($lyear_count % 4 == 0) {
$utime -= $sec_in_lyear; // Compensate for leap years.
}
else {
$utime -= $sec_in_year;
}
$year_count++;
$lyear_count++;
}
while($utime >= $months[$month_count]) { // Count the months since Jan.
if($lyear_count % 4 == 0) {
$utime -= $lmonths[$month_count]; // Compensate for leap year Feb.
}
else {
$utime -= $months[$month_count];
}
$month_count++;
}
И еще куча строк кода.
Конвертим никсовый временной штамп, в читаемый для человека формат... aka date()
+145
<ZORG2> Как грамотно хранить PHP код в базе????
<neko> как строку
<ZORG2> я имею в виду фильтровать его как то?? возможность добавления PHP кода в базу будет только у админа сайта.
<neko> скастуй в строку!
<ZORG2> и этот код будет подключаться в некоторые страницы сайта для выполнения
привет от #php на irc.by
+158
protected function composeResolvers()
{
require_once systemConfig::$pathToSystem . '/resolver/init.php';
require_once systemConfig::$pathToSystem . '/resolver/templateMediaResolver.php';
require_once systemConfig::$pathToSystem . '/resolver/moduleMediaResolver.php';
require_once systemConfig::$pathToSystem . '/resolver/extensionBasedModuleMediaResolver.php';
require_once systemConfig::$pathToSystem . '/core/fileLoader.php';
$baseresolver = new compositeResolver();
$baseresolver->addResolver(new fileResolver(systemConfig::$pathToApplication . '/*'));
$baseresolver->addResolver(new fileResolver(systemConfig::$pathToWebRoot . '/*'));
$baseresolver->addResolver(new fileResolver(systemConfig::$pathToSystem . '/*'));
$resolver = new compositeResolver();
$resolver->addResolver(new templateMediaResolver($baseresolver));
$resolver->addResolver(new moduleMediaResolver($baseresolver));
$resolver->addResolver(new extensionBasedModuleMediaResolver($baseresolver));
$resolver->addResolver(new classFileResolver($baseresolver));
if (function_exists('external_callback')) {
external_callback($resolver, $baseresolver);
}
return new cachingResolver($resolver, 'resolver_media_cache');
}
Прямиком с http://govnokod.googlecode.com/svn/trunk/govnoquoter/www/bundle.php
Там ещё много всего интересного!
+172
for($i;$i<strlen($param);$i++)
{
if(strpos($extra,$param[$i]) === FALSE && eregi('[^a-zA-Z]', $param[$i] )) return false;
}
Проверка, что строка состоит только из букАвок. com_rsform для Joomla. Там весь validation.php таким измазан.