Здраствуйте!
У меня такая проблема.
Я знаю как можно присоедить одну строку к другой, но как присоединить строку к переменной я не знаю. Например, в зависимости от ситуации, мне надо создать несколько массивов mas1, mas2, …, masn, где число n как раз зависит от ситуации. Я делаю цикл
for($i=1; $i < n+1; $i++){
$kuzy"$i" = array();
}
Но этот цикл не пройдет, т. к. запись $kuzy"$i" — ошибка.
Какой синтаксис применить, чтобы ошибки не было?
Просьба к esterio - не обижаться. Выдало ошибку и я на этом потерял много времени. Я по другим вопросам специалист и если у меня прокол, то я это просто учитываю.
Подскажите, не могу понять в чем ошибка.
В базе данных в таблице catalog есть четыре колонки: predmet1, predmet2, predmet3 и predmet4. Далее, существует массив $wasy(это для примера). Мне нужно составить массив, который получается из выборки таких строк таблицы catalog, чтобы хотя бы одна ячейка из predmet1, predmet2, predmet3 и predmet4 равнялась бы хотя бы одному элементу массива $wasy.
Далее я пишу такую программу:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Иванович, Матвей) or 'predmet2'
IN (Федя, Гриша , Ива' at line 1
Если я в массиве вместо 'Иван Иванович' пишу просто 'Иван', то ошибки нет. Значит ошибка возникает с появлением пробела между 'Иван' и 'Иванович'.
Убедительная просьба esterio не лезть с советами, т. к. он подсказал мне вместо $w=implode(', ',$wasy);
поставить такое выражение: $w = array_map('sprintf', array_fill(0, count($wasy), '"%s"'), array_values($wasy));
У меня прежняя ошибка пропала, но возникла новая: Unknown column 'Array' in 'where clause'
Я сначала не знал что значит эта ошибка, но подумал что с ней легко справлюсь, и написал esterio, что все в порядке.
Когда разобрался, то оказалось, что в команде CELECT не может восприниматься IN, т. к.
переменная $w не строка, а esterio подсунул мне массив.
Как сделать так, чтобы пробел был, но ошибка не возникала бы.
Подскажите, не могу понять в чем ошибка.
В базе данных в таблице catalog есть четыре колонки: predmet1, predmet2, predmet3 и predmet4. Далее, существует массив $wasy(это для примера). Мне нужно составить массив, который получается из выборки таких строк таблицы catalog, чтобы хотя бы одна ячейка из predmet1, predmet2, predmet3 и predmet4 равнялась бы хотя бы одному элементу массива $wasy.
Далее я пишу такую программу:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Иванович, Матвей) or 'predmet2'
IN (Федя, Гриша , Ива' at line 1
Если я в массиве вместо 'Иван Иванович' пишу просто 'Иван', то ошибки нет. Значит ошибка возникает с появлением пробела между 'Иван' и 'Иванович'.
Как сделать так, чтобы пробел был, но ошибка не возникала бы.
Заранее извиняюсь за наивность.
Подскажите, как правильно написать выборку из базы данных.
В базе данных в таблице catalog есть четыре колонки: predmet1, predmet2, predmet3 и predmet4. Далее, существует массив $wot. Мне нужно составить массив, который получается из выборки таких строк таблицы catalog, чтобы хотя бы одна ячейка из predmet1, predmet2, predmet3 и predmet4 равнялась бы хотя бы одному элементу массива $wot.
Грубое написание выглядит так:
Спасибо LIME
Буду пробовать и думать. (Добавление)
Спасибо большое LIME
Твой совет с командой trim сразу помог. Спасибо!!!
Скажи, как ты так знаешь все ньюансы? Мне бы так!
Может быть у тебя есть файлик, где нормально описаны команды PHP?
Непонятно, как мне, без всяких курсов, спокойно дома всем овладеть?
Неплохо бы ты дал по этому поводу совет.
Непонятное поведение команды file_put_contents.
1. Командой define я файлу repet.log присваиваю имя REPET_LOG:
define("REPET_LOG", "repet.log");
2. Переменной data1 присваиваю такую строку:
$data1 = «wasy1:wasy2:..........wasy35»;
3. С помощью команды file_put_contents я передаю данные от
переменной $data1 к переменной REPET_LOG:
file_put_contents(REPET_LOG, $data1, FILE_APPEND);
4. Далее в программе я часто использую (должен использовать)
переменную REPET_LOG. В частности, с помощью команды
file передаю данные из REPET_LOG файлу $orders:
$orders = file(REPET_LOG);
И вот теперь самое главное, я ожидаю что в переменной $orders - массив с одной ячейкой,
т. к. команда file_put_contents должна делать только одну строку, а на самом деле
команда file_put_contents сделала текстовой файл с двумя строками, а значит массив
$orders стал с двумя ячейками, чего быть (как я читал) не должно.
Если в $data1 будет более короткая строка, например $data1 = «wasy1:wasy2:..........wasy18»,
тогда команда file_put_contents делает однострочный текстовой файл. Т.е. работает правильно.
Теперь вопрос: как сделать, чтобы команда file_put_contents сделала однострочный
текстовой файл, или, если это непоправимо, как из массива с двумя ячейками
($data1[0] и $data1[1]) сделать массив с одной ячейкой: $data[0]. Т.е. В нем будут
все данные из $data1[0] и $data1[1].
Заранее извиняюсь, если где-то писал не профессионально или не логично.
Я начинающий...
Warning: Cannot modify header information - headers already sent by (output started at /var/www/w.php:2) in /var/www/w.php on line 17
Строка 2 - это <form action="<?php print $_SERVER['PHP_SELF']; ?>"method='post'>
Строка 17 - это if($prol == 'wasy'){header("Location: wot.php");}
Я по дилетантски подозреваю, что при отправке данных формы информация ушла и в переменную $prol ничего не записалось.
Как сделать так, чтобы при загрузке в форму в ячейку "Пароль" слова "wasy"(и форма отправилась), был переход на определенную страницу.
файл лежит в корне сайта.
При загрузке Ubuntu и установке Apache, PHP и MySQL сразу был определен корень сайта:
Файловая система/var/www
Вот в www - все файлы и папки. (Добавление)
Прошу извинения IllusionMH!!!
Дурдом какой-то. До Нового года не работало, а сейчас заработало!
Извините. С Новым годом вас!!!
должна видеть папку
style и работать с файлом styles.css. В windows это проходит нормально (что само собой), а в
ubuntu нет. Программа не видит папку, а в ней файл.
Я попробовал обойтись без папки и все стили написать в программе, т.е.
<style type="text/css">
стилевые скрипты
</style>
Работает прекрасно. Можно бы так и оставить, но хотелось бы чтобы скрипты находились в папке.
В чем здесь проблема?