Xwab
Форумыnavigate_nextНебольшие вопросы по PHP/MySQL

Топ: Небольшие вопросы по PHP
Сообщения
Okula

Это символы перевода строки и возврата каретки

01 Июл 2011, 21:02
messer93

возврат каретки? как в печатных машынках?

02 Июл 2011, 11:24
Wakeup

вывожу с БД к примеру 3 столбца:
|Имя|Фамилия|Отчество|
как сделать, чтоб при каждом добавлении строки сама рисовалась таблица и в нее заполнялись значения?

02 Июл 2011, 14:33
messer93

цыкл

02 Июл 2011, 16:01
Okula

messer93 пишет:
"возврат каретки? как в печатных машынках?"

Да, как в печатной машинке  В некоторых старых операционных системах этот символ присутствует. (например старая ОС Macintosh)

02 Июл 2011, 20:10
web-master

написал вот такую регулярку preg_match("/^[A-Za-zА-Яа-я\-?]{1,30}$/i", $string) и для проверки значит начал писать различные набору букв, так вот на такой набор регулярка не ругается "вапа" а на такой ругается "сммс", что за проблема??

03 Июл 2011, 9:54
Constantin_Logan

Подскажите, каптча не робит(
как исправить?
<?php

function MultiWave($img)
{
    // хз кто автор, взял из dcms
    $width = imagesx($img);
    $height = imagesy($img);
    $img2 = imagecreatetruecolor($width, $height);
    $rand1 = mt_rand(700000, 1000000) / 15000000;
    $rand2 = mt_rand(700000, 1000000) / 15000000;
    $rand3 = mt_rand(700000, 1000000) / 15000000;
    $rand4 = mt_rand(700000, 1000000) / 15000000;
    // фазы
    $rand5 = mt_rand(0, 3141592) / 1000000;
    $rand6 = mt_rand(0, 3141592) / 1000000;
    $rand7 = mt_rand(0, 3141592) / 1000000;
    $rand8 = mt_rand(0, 3141592) / 1000000;
    // амплитуды
    $rand9 = mt_rand(400, 600) / 100;
    $rand10 = mt_rand(400, 600) / 100;

    for ($x = 0; $x < $width; $x++) {
        for ($y = 0; $y < $height; $y++) {
            // координаты пикселя-первообраза.
            $sx = $x + (sin($x * $rand1 + $rand5) + sin($y * $rand3 + $rand6)) * $rand9;
            $sy = $y + (sin($x * $rand2 + $rand7) + sin($y * $rand4 + $rand8)) * $rand10;

            // первообраз за пределами изображения
            if ($sx < 0 || $sy < 0 || $sx >= $width - 1 || $sy >= $height - 1) {
                $color = 255;
                $color_x = 255;
                $color_y = 255;
                $color_xy = 255;
            } else { // цвета основного пикселя и его 3-х соседей для лучшего антиалиасинга
                $color = (imagecolorat($img, $sx, $sy) >> 16) & 0xFF;
                $color_x = (imagecolorat($img, $sx + 1, $sy) >> 16) & 0xFF;
                $color_y = (imagecolorat($img, $sx, $sy + 1) >> 16) & 0xFF;
                $color_xy = (imagecolorat($img, $sx + 1, $sy + 1) >> 16) & 0xFF;
            }


            // сглаживаем только точки, цвета соседей которых отличается
            if ($color == $color_x && $color == $color_y && $color == $color_xy) {
                $newcolor = $color;
            } else {
                $frsx = $sx - floor($sx); //отклонение координат первообраза от целого
                $frsy = $sy - floor($sy);
                $frsx1 = 1 - $frsx;
                $frsy1 = 1 - $frsy;

                // вычисление цвета нового пикселя как пропорции от цвета основного пикселя и его соседей
                $newcolor = floor($color * $frsx1 * $frsy1 + $color_x * $frsx * $frsy1 + $color_y *
                    $frsx1 * $frsy + $color_xy * $frsx * $frsy);
            }
            imagesetpixel($img2, $x, $y, imagecolorallocate($img2, $newcolor, $newcolor, $newcolor));
        }
    }
    return $img2;
}
$_SESSION['captcha'] = mt_rand(1, 9999);
$img = imagecreatetruecolor(70, 35);
imagefill($img, 0, 0, imagecolorallocate($img, 255, 255, 255));
imagettftext($img, 12, 0, 20, 20, imagecolorallocate($img, 0, 0, 0),
    '!system/arial.ttf', $_SESSION['captcha']);
header('Content-type: image/jpeg');
$img = MultiWave($img);
imagejpeg($img, null, mt_rand(10,70));
?>

03 Июл 2011, 11:17
LooK

Constantin_Logan, а в чем собственно ошибка?

03 Июл 2011, 11:21
Constantin_Logan

Блин! Шрифт забыл кинуть в папку. Спасибо за внимание.

03 Июл 2011, 11:25
Okula

web-master пишет:
"написал вот такую регулярку preg_match("/^[A-Za-zА-Яа-я\-?]{1,30}$/i", $string) и для проверки значит начал писать различные набору букв, так вот на такой набор регулярка не ругается "вапа" а на такой ругается "сммс", что за проблема??"
у тебя регулярка составленна не коректно это раз, модификатор i указывает на регистронезависимость. 2-е для того чтобы регулярка корректо работа с кирилецей в кодировке уникод нужно использовать модификатор u
Регулярка должна выглядеть так:
/^[a-zа-яё\-\?]{1,30}$/iu

03 Июл 2011, 11:30
Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.