Jump to content

kilogram

User
  • Posts

    120
  • Joined

  • Last visited

  • Days Won

    4

Posts posted by kilogram

  1. Оказывается у меня оказалось в файле одна строка такая:

     short_open_tag = On

    А там ниже в файле php.ini


    short_open_tag = Off

    а теперь и сессия считает счетчик и такое стало работать:

    <?='...'?>

  2. При использовании полных тегов, код работает, проблема что не считает ещё количество.

    <?php ## Пример работы с сессиями, 
    session_start();
    // Если на сайт только-только зашли, обнуляем счетчик.
    if (!isset($_SESSION['count'])) $_SESSION['count'] = 0;
    // Увеличиваем счетчик в сессии.
    $_SESSION['count'] = $_SESSION['count'] + 1;
    ?>
    <h2>Счетчик</h2>
    В текущей сессии работы с браузером Вы открыли эту страницу
    <?=$_SESSION['count']?> раз(a).<br>
    Закройте браузер, чтобы обнулить счетчик.<br>
    <a href="<?php echo "http://google.ru" ?>" target='_blank' ">Oткрыть дочернее окно
    браузера </а>.

    После установки short_open_tag = On сервер перезагружал, ничего не помогло.

    phpinfo() пишет такое если его вызвать в коде, но я же его включал вроде

    short_open_tag	Off	Off

    Написал так и перезагрузил, также ничего не помогло.


    <Directory />
    Options all
    AllowOverride all
    Order deny,allow
    Allow from all
    Satisfy all
    </Directory>

    Как включить error log, access log в пхп чтобы появлялись эти файлы если их нету и выдавали ошибку?

  3. MRSkV8yM.jpg

    var_dump($_SERVER['SCRIPT_NAME'] );

    выдает такое:

    string(10) "/index.php"

     short_open_tag = On

    в конфиге апача такие настройки

    <Directory />
    Options FollowSymLinks
    AllowOverride all
    Order deny,allow
    Allow from all
    Satisfy all
    </Directory>

    Ничего не работает, выдает:

    Forbidden

    You don't have permission to access /< on this server.

    Apache/2.2.19 (Win32) PHP/5.3.6 Server at test.ru Port 80

    HELP! HELP! ПОМОГИТЕ! НЕ ПАШЕТ НИЧЕГО!

  4. Я так понял не работает short_open_tag. В апаче такие настройки:


    <Directory />
    Options FollowSymLinks
    AllowOverride all
    Order deny,allow
    Deny from all
    Satisfy all
    </Directory>

    DirectoryIndex index.php index.html index.htm

    В пхп.ини раскоментированный и все равно не пашет.


    short_open_tag On

    Эта конструкция не срабатывает:

    <?= ....?>

  5. <?php ## Пример работы с сессиями, 
    session_start();
    // Если на сайт только-только зашли, обнуляем счетчик.
    if (!isset($_SESSION['count'])) $_SESSION['count'] = 0;
    // Увеличиваем счетчик в сессии.
    $_SESSION['count'] = $_SESSION['count'] + 1;
    ?>
    <h2>Счетчик</h2>
    В текущей сессии работы с браузером Вы открыли эту страницу
    <?=$_SESSION['count']?> раз(a).<br>
    Закройте браузер, чтобы обнулить счетчик.<br>
    <a href="<?=$_SERVER['SCRIPT_NAME']?>" target='_blank' ">Oткрыть дочернее окно
    браузера </а>.

    Читаю Котова, вот пример, не производится подсчет почему то, а при нажатии на ссылку: "Открыть дочернее окно браузера", получаю такое:

    Forbidden

    You don't have permission to access /< on this server.

    Apache/2.2.19 (Win32) PHP/5.3.6 Server at test.ru Port 80

  6. Вот написал запрос:

    select *from name1 right join name2 on  name1.name=name2.name where name1.name is not NULL

    К таблице, имя которой стоит перед джойном - name1,

    присоединяется таблица, имя которой идет после джойна - name2

    Далее стоит условие, согласно которому выводить. Условие такое:

    Выводить, все строки из таблицы name1 с полем name, которые не присутствуют в таблице name2.

    У меня такие записи в таблице name2, добавил 2 записи:

    Mf1GWGsh.jpg

    Почему в результате выводит?

    1  Петя   1 Петя

  7. Перед джоином обязательно должна стоять таблица которая ссылается, а после джоина таблица на которую ссылаются?

  8. left join должен искать все строки в таблице name1 с величиной name, которая не присутствует в таблице name2, но в name2 присутствует Петя, почему оно все равно его выводит при этом запросе ниже?

    select name1.name from name1 left join name2 on  name1.name=name2.name 

  9. Есть 2 таблицы: name1 и name2;

    name1 создана так:

    create table name1(id int(3) auto_increment, name varchar(10), primary key(id))

    name2 создана так:

    create table name2(id int(3) auto_increment, name varchar(10), primary key(id),foreign key(name) references name1)

    Вот так заполнены таблицы:

    w6ZtiXUf.jpg

    Скажите, чем отличается это:

    select * from name1 left join name2 on  name1.name=name2.name;

    от этого?

    select * from name1 left outer join name2 on  name1.name=name2.name;

    Результат выдает один и тот же

  10. Вот мой файл 1.txt

    BNs7pC5u.jpg

    Проблемма что добавляются в базу данных пробелы, а мне нужно их убрать. Как написать так чтобы не добавлялись пробелы?

    Если написать так запрос:

    load data infile '1.txt' into table dog (name, age);

    получится ошибка:

    KFr6TLI7.jpg

    А если написать так:

    load data infile '1.txt' into table dog fields terminated by  '  '(name,age); 

    добавляет с пробелом, фото ниже.

    ai2r1p0b.jpg

    Как написать чтобы не добавляло пробелы в базу?

  11. Один нюанс заметил. При вставке в базу после этой строки, добавляются пробелы из-за terminated by ' ' , но парадокс, без неё не вставляется, а с ней вставляются пробелы. Как вставлять без пробелов?

    load data infile '1.txt' into table dog fields terminated by '  ' (name,age) 

    Один нюанс заметил. При вставке в базу после этой строки, добавляются пробелы из-за terminated by ' ' , но парадокс, без неё не вставляется, а с ней вставляются пробелы. Как вставлять без пробелов?

    load data infile '1.txt' into table dog fields terminated by '  ' (name,age) 

  12. Создал для теста таблицу dog:


    | dog | CREATE TABLE `dog` (
    `id` int(3) NOT NULL AUTO_INCREMENT,
    `name` varchar(15) DEFAULT NULL,
    `age` int(3) DEFAULT NULL,
    PRIMARY KEY (`id`)
    ) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 |

    Как вставлять записи из файла в базу данных в которой содержится первичный ключ с автоинкрементом, так чтобы не писать над каждой записью в файле - номер вставляемой записи, а так чтобы в таблице этот номер вставлялся сам?


    1 Василий 91
    2 Андерсон 18

    Вот так работает, но приходится в файле нумеровать каждую вставляемую запись: 1, 2, 3, 4....

    load data infile '1.txt' into table dog fields terminated by ' ';

  13. Сохранил ЮТФ-8 без БОМ, сработало вроде.

    Попробывал написать в файле 1.txt:


    38,Василий,Дятлов,91
    39,Пол,Андерсон,91

    Вот моя таблица:


    ————————————————————
    | cat | CREATE TABLE `cat` (
    `number` int(11) NOT NULL AUTO_INCREMENT,
    `name1` varchar(20) DEFAULT NULL,
    `surname` char(12) DEFAULT NULL,
    `age` int(11) DEFAULT NULL,
    PRIMARY KEY (`number`),
    UNIQUE KEY `name1` (`name1`,`surname`,`age`)
    ) ENGINE=MyISAM AUTO_INCREMENT=41 DEFAULT CHARSET=utf8 |

    Ведь здесь стоит уникальный ключ на каждое поле чтобы не повторялось. Почему вставились 2 записи, ведь в последнем поле age 2 раза повторяется 91? Почему уникальный ключ не сработал?*

  14. Вот мой файл 1.txt

    Скажите, что там не так?

    ds8Ez4DE.jpg

    Написал так:

    load data infile '1.txt' into table cat FIELDS TERMINATED BY ','

    Выдает такую ошибку:

    x4e51Mk6.jpg

  15. Читаю здесь http://phpclub.ru/mysql/doc/load-data.html про LOAD DATA. Пишу так:

    load data infile '1.txt' into table cat;

    Выдает такую ошибку на фото:

    zbjJdPRm.jpg

    Что может быть?

    Содержимое файла 1.txt

    Андрей Пупкин 85

    Таблица такая:

    | cat   | CREATE TABLE `cat` (
    `number` int(11) NOT NULL AUTO_INCREMENT,
    `name1` varchar(20) DEFAULT NULL,
    `surname` char(12) DEFAULT NULL,
    `age` int(11) DEFAULT NULL,
    PRIMARY KEY (`number`),
    UNIQUE KEY `name1` (`name1`,`surname`,`age`)
    ) ENGINE=MyISAM AUTO_INCREMENT=35 DEFAULT CHARSET=utf8 |

  16. Вот так удалилось


    alter table cat drop index name1

    Я заметил странную вещь, если написать такой запрос:


    alter ignore table cat add UNIQUE (name1,surname,age)

    А потом запустить 3 раза, выходит такое в результате в таблицу.

    Что это такое произошло?


    UNIQUE KEY `name1` (`name1`,`surname`,`age`),
    UNIQUE KEY `name1_2` (`name1`,`surname`,`age`),
    UNIQUE KEY `name1_3` (`name1`,`surname`,`age`)

  17. Мне нужно чтобы не добавлялись идентичные 3 поля если они встретятся, а они добавляются даже если стоит первичный или уникальный ключ у меня в первом идуещм поле. Вот так вставляю и добавляется, а нужно чтобы заменялся дубликатом. Что делать? Вот так вставляю.


    replace into cat (name1,surname,age) VALUES("Алина","Глушева",34)

    прочитал здесь:

    http://phpclub.ru/mysql/doc/replace.html

    a8PDimZ0.jpg

  18. Хочу установить везде кодировку ютф-8 не получается, пробую по статье:

    http://broderix.blogspot.com/2009/06/mysql5-default-character-collation.html

    Вот что вы водит где бы не вставлял вот это в файле my.ini


    default-character-set=utf8
    [mysqld]
    default-character-set=utf8
    default-collation=utf8_general_ci
    character-set-server=utf8
    init-connect='SET NAMES utf8;'
    collation-server=utf8_general_ci

    Вот такое постоянно возвращает МАЙСКЛ в результате, получается ничего не изменилось. Результат на фото. Кодировки все в ютф-8 не сделались. Вот мой файл my.ini http://santa.hut4.ru/my.txt подскажите, в какое место вставить те строки выше в моем файле?

    Куда не вставляю ничего не меняется.

    5KpREGJk.jpg

  19. Вот так пробую не выводит ничего вообще в результате:

    select name1 from cat where name1 REGEXP "^[А-Яа-я]{4}$";

    и так не пашет:

    select name1 from cat where name1 REGEXP "^.{4}$";

    и так не хочет:

    select name1 from cat where name1 REGEXP "^....$";

    и так:

    select name1 from cat where name1 REGEXP "^\w{4}$";

    Вот такая таблица, фото ниже. Нужно чтобы возвратило слова состоящие из 4 символов.

    Вот так работает, но я хотел бы регуляркой научиться такие фокусы


    select name1 from cat where name1 LIKE '____';

    Как сделать такое же регуляркой?

    xT7ym2WW.jpg

  20. ДА, запустил, теперь другая ошибка.

    aUF3xxXJ.jpg

    В новом установленном, работает консоль и под паролем захожу, а вот в админ азйти не могу никак, выдает такую ошибку.

    9AOeU1X4.jpg

  21. Решил переустновить MYSQL так как стал глючить и паролит требовать, старого полностью снес и поставил новый. После установки, новый заработал и запускал сайт и он работал. Перезагрузил комп, запусчкаю PHPMYADMIN

    выдает такую ошибку:

    Ошибка
    Ответ MySQL:
    #2002 - Сервер не отвечает (либо сокет локального MySQL-сервера некорректно настроен)

    В интернете глянул, там одни предлагают отключить брандмаузер, отключил, эффекта не дало. Что можно сделать?

  22. Я что-то не понял прикола, перекодировал файл index.php в ютф-8 и вывело на экран, а так не выводило.

    <?php
    $db = mysql_connect('localhost', 'pma', '111');
    mysql_select_db('test',$db);
    mysql_query('INSERT INTO cat(number,name,age) VALUES ("","Петя",28)');
    $rez = mysql_query('SELECT * FROM test.cat');
    while($r = mysql_fetch_assoc($rez)) echo $r["number"],$r["name"],$r["age"];
    ?>

    • Like 1
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy