![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| box |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 506 Регистрация: 27.2.2007 Репутация: 0 Всего: 0 |
подскажите как правельно подставить переменную в таблицe:
for($i=0; $i < count($per); $i++) { echo $i; $sql = 'CREATE TABLE $i (' . ' '1'T CHARACTER SET koi8r COLLATE koi8r_general_ci NOT NULL' . ' )' . ' ENGINE = myisam;'; } надо что-бы автоматически создавались различные имена в таблице, а вот так у меня ничего не получается !!! создается только однф таблица с именем $i !!! почему ??? |
|||
|
||||
| Glip |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 473 Регистрация: 30.12.2006 Репутация: 7 Всего: 18 |
'CREATE TABLE '.$i.' ('
|
|||
|
||||
| Всемогущий |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 440 Регистрация: 25.6.2006 Где: Челябинск Репутация: 5 Всего: 13 |
это потому ,что переменные не обрабатываются внутри одинарных кавычек.
сделай двойные
|
|||
|
||||
| Glip |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 473 Регистрация: 30.12.2006 Репутация: 7 Всего: 18 |
и здесь
' '1'T CHARACTER SET koi8r COLLATE koi8r_general_ci NOT NULL' вроде должно ошибку давать |
|||
|
||||
| box |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 506 Регистрация: 27.2.2007 Репутация: 0 Всего: 0 |
for($i=0; $i < count($per); $i++)
{ echo $i; $sql = "CREATE TABLE $i (" . " 1 TEXT CHARACTER SET koi8r COLLATE koi8r_general_ci NOT NULL" . " )' . ' ENGINE = myisam;'; } выдает ошибку . А сколько таблиц вообше может быть создано ??? |
|||
|
||||
| Glip |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 473 Регистрация: 30.12.2006 Репутация: 7 Всего: 18 |
правильно выдает. потому что
. " )' внимательнее надо быть. еще можно взять редактор с нормальной подсветкой Это сообщение отредактировал(а) Glip - 4.3.2007, 20:56 |
|||
|
||||
| box |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 506 Регистрация: 27.2.2007 Репутация: 0 Всего: 0 |
я не пойму к чему такие сложности , как будет выглядеть ???
|
|||
|
||||
| box |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 506 Регистрация: 27.2.2007 Репутация: 0 Всего: 0 |
послушайте уважаемые , если не знаете ответ на вопрос , то лучше не лезте в тему !!!
потому что из того что вы мне посоветовали ничего извлечь нельзя !!!!!!! |
|||
|
||||
| Glip |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 473 Регистрация: 30.12.2006 Репутация: 7 Всего: 18 |
Какие вопросы, такие и ответы. Вы спросили как правильно подставить переменную, Вам ответили. Спросили почему ошибка, тоже получили ответ. А то что Вы не видите разницы между двойными и одинарными кавычками и не знаете правила задания и объединения строк, оказывается мы виноваты.
|
|||
|
||||
| box |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 506 Регистрация: 27.2.2007 Репутация: 0 Всего: 0 |
Нет уважаемый , один говорит что нужно сделать так :
'CREATE TABLE '.$i.' (' а другой говорит , что в одинарных кавычках не будудет восприниматся переменная !!! как это понимать ??????????? |
|||
|
||||
| Glip |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 473 Регистрация: 30.12.2006 Репутация: 7 Всего: 18 |
Читаем документацию про строковые переменные и их объединение.
Если допустить что в $i нет никаких "извратов" (а может и с "извратами") то в данном случае 'CREATE TABLE '.$i.' (' == "CREATE TABLE $i (" |
|||
|
||||
| box |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 506 Регистрация: 27.2.2007 Репутация: 0 Всего: 0 |
могу вас уверить что не первый не второй вариант не РАБОЧИЙ !!! попрошу выложить исходный код , если вы в состоянии конечно !!
вот тогда вам будет уважуха и респект !!!!!!! Это сообщение отредактировал(а) box - 4.3.2007, 21:59 |
|||
|
||||
| Glip |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 473 Регистрация: 30.12.2006 Репутация: 7 Всего: 18 |
Есть у меня подозрение что постановка задачи не правильная. Точнее ту задачу, которую Вы пытаетесь решить таким образом, надо решать по другому. Если всетаки решать именно так, то желательно _точно_ узнать разрешены ли у Mysql (судя по ENGINE) в качестве имен таблиц и полей цифры. Если разрешены, то Ваш запрос будет выглядеть примерно так:
при условии что сам SQL запрос изначально правильный. К сожалению не работю с MySQL и не знаю правильности использования "CHARACTER SET" и "COLLATE". В рамках же Вашего вопроса:
переменная в данном случае поставлена правильно. Если всетаки Вы не получите желаемый результат, то возможно ошибка в php коде. Респекта и уважухи у меня хоть отбавляй. А вот люди не желающие читать документацию, и считающие что все им _обязаны_ помогать, мягко говоря бесят. Это сообщение отредактировал(а) Glip - 4.3.2007, 22:24 |
||||
|
|||||
| box |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 506 Регистрация: 27.2.2007 Репутация: 0 Всего: 0 |
Да нет , не обязаны , просто если -бы ты хоть чуть -чуть понимал в том о чем ты говориш , то не делал бы таких ошибок , а точнее если в таком цикле создавать таблицу то будет всегда выдавать ошибку , потому-что скрипт пытается создать одну и туже таблицу два раза , что не возможно по определению , тут надо деййствовать через alter table !!!
|
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 75 Всего: 260 |
в каком цикле? у Glip приведен код, который надо вставить в цикл. а претензии вида "почему вы за меня не написали скрипт" принимаются только в том случае, если между мной(или Glip) и вами заключен контракт. в противном случае - добавляйте цикл сами. |
|||
|
||||
| Glip |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 473 Регистрация: 30.12.2006 Репутация: 7 Всего: 18 |
Дорогой box, я считаю что критика с Вашей стороны в мой адрес несколько необоснована. Если бы Вы снизошли до прочтения документации http://dev.mysql.com/doc/refman/5.1/en/alter-table.html, то поняли бы что создать таблицу с помощью ALTER TABLE не получится, переименовать - да, создать - нет.
И по всем Вашим постам в этой теме, напрашивается вывод: помогать Вам нет смыла |
|||
|
||||
| box |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 506 Регистрация: 27.2.2007 Репутация: 0 Всего: 0 |
Ну согласись что Gzip Не прав , код преведенный им не будет работать в цикле в принципе !!!
|
|||
|
||||
| SelenIT |
|
|||
![]() баг форума ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3996 Регистрация: 17.10.2006 Где: Pale Blue Dot Репутация: 32 Всего: 401 |
box, Вы маетесь фигней (простите за откровенность). В 99.999...% случаев не нужно создавать в цикле тучу одинаковых по структуре таблиц с бессмысленными цифровыми именами - достаточно сделать одну таблицу и добавить в нее одно поле, куда будут заноситься соответствующие цифры. Чем препираться со знающими людьми, лучше лягте нормально поспите - утро вечера мудренее...
-------------------- Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму! |
|||
|
||||
| sergejzr |
|
|||
![]() Un salsero Профиль Группа: Админ Сообщений: 13285 Регистрация: 10.2.2004 Где: Германия г .Ганновер Репутация: 5 Всего: 360 |
Tема закрыта по причине хамства автора!
Если Вам надо исходный код - обращайтесь в раздел "работа" или пытайте счастья в "центре помощи". |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |