|
На страницу « 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25 » |
|
|
|
|
Возраст: 38 C нами с 25.01.2005 Репутация: 133
|
|
Язык программирования, разработанный специально для динамической генерации веб-страниц. Намного превосходит возможности SSI. Имеет функции работы с базами данных (MySQL), создания графических файлов Jpeg и PNG (библиотека GD), обработки XML-документов и многие другие.
|
|
|
|
|
|
|
|
Возраст: 39 C нами с 01.10.2006 Репутация: 275
|
|
Есть html-форма, на ней есть несколько элементов-флажков (checkbox), по умолчанию стоят галочки. Пользователь может снять галочки с некоторых элементов, после этого нажать кнопку "Сохранить изменения". Изменения должны сохраниться в mysql. Подскажите, пожалуйста, как передать программе, снял ли пользователь галочки с флажков (и с каких именно).
|
_____________________________ Написать неработающую программу легче, чем разобраться в работающей
|
|
|
|
|
|
|
Возраст: 82 C нами с 04.02.2005 Репутация: 51.9
|
|
так как любая форма после сабмита появляется в массиве $_POST, там и ищите
Hint: если у флажка на момент сабмита была установлена галочка (состояние checked) - то перменная флажка передается в $_POST, в противном случае вы ее там не найдете.
PS: для наглядности поставте в начале файла print_r($_POST);
|
|
|
|
|
|
|
|
Возраст: 36 C нами с 22.01.2006 Репутация: 256.8
|
|
<form ........>.......<input type="checkbox" name="list[]" value="name1" />
.........<input type="checkbox" name="list[]" value="name2" />
</form> |
Далее
$mark_list = ( !empty($_POST['list']) ) ? $_POST['list'] : 0;
for($i = 0; $i < count($mark_list); $i++) {
................
} |
В массиве $mark_list[] будут лежать value всех отмеченных
|
Последний раз редактировалось: splav (11 Дек 2007, 16:29), всего редактировалось 1 раз
|
|
|
|
|
|
|
Возраст: 39 C нами с 01.10.2006 Репутация: 275
|
|
b, splav, спасибо большое за помощь!
|
_____________________________ Написать неработающую программу легче, чем разобраться в работающей
|
|
|
|
|
|
|
Возраст: 39 C нами с 01.10.2006 Репутация: 275
|
|
Я, наверное, вас замучала вопросами Хочу задать ещё один небольшой вопросик
Ситуация следующая: пользователь авторизировался на сайте и просматривает страницу. В эту страницу включён файл "user.php". Можно ли в этот файл передать логин авторизировавшегося пользователя? Может, есть какая-нибудь переменная, в которой хранится этот логин и которая будет доступна включённому файлу ("user.php")?
|
_____________________________ Написать неработающую программу легче, чем разобраться в работающей
|
|
|
|
|
|
|
Возраст: 82 C нами с 04.02.2005 Репутация: 51.9
|
|
"влюченным" файлам доступны все глобальные переменные обознченые во "включающем". тоесть их области видимости пересекаются.
index.php
$my_var = 'some content';
include('user.php'); |
user.php
PS: предустановленные переменные ($_POST, $_GET, $_SERVER etc.) доступны вообще из любого места кода.
|
|
|
|
|
|
|
|
Возраст: 39 C нами с 01.10.2006 Репутация: 275
|
|
Как при помощи PHP переопределить корневую папку?
В скрипте (который, к примеру, находится в папке /www/php) с помощью include мне нужно вставить файл, который находится в каталоге на уровень выше (в папке /www). Как к нему прописать относительный путь, не привязываясь к адресу хоста или к абсолютному адресу местоположения этого файла на жёстком диске)?
|
_____________________________ Написать неработающую программу легче, чем разобраться в работающей
|
|
|
|
|
|
|
C нами с 15.04.2005 Репутация: 133.2
|
|
../file.ext
(.. — директория уровнем выше)
|
_____________________________ Время не существует, у него нет физического носителя в природе. Его выдумал человек, чтобы измерять скорость.
|
|
|
|
|
|
|
Возраст: 82 C нами с 04.02.2005 Репутация: 51.9
|
|
начните с
define('ROOT_PATH', $_SERVER['DOCUMENT_ROOT'] . '/');
|
а дальше можно и
define(ROOT_PATH . 'LIB_PATH', 'my_lib/');
define(ROOT_PATH . 'INC_PATH', 'my_includes/');
|
и так далее... используйте КОНСТАНТЫ для доступа к инклюдам.
мой совет, не привыкайте к относительным путям, это вам потом аукнется при разработке
|
|
|
|
|
|
|
|
Возраст: 39 C нами с 01.10.2006 Репутация: 275
|
|
Есть скрипт, который на сервер заливает файлы в формате doc (к примеру в папку /docfiles/), переименовывая их в зависимости от того, под каким из пользователей он отправлен (user1 -> 1.doc, user2 -> 2.doc и т.д.). Со своей страницы пользователь, естественно, видит ссылку только на скачивание своего файла, но ведь файл можно скачать по ссылке напрямую. Например, user1 может набрать в браузере http://server.ru/docfiles/2.doc и получить файла второго пользователя. Как можно решить эту проблему?
|
_____________________________ Написать неработающую программу легче, чем разобраться в работающей
|
|
|
|
|
|
|
Возраст: 44 C нами с 05.04.2005 Репутация: 121.1
|
|
запретить доступ к каталогу /docfiles/ а файлы выдавать через скрипт, тоесть в место http://server.ru/docfiles/2.doc урл будет вида http://server.ru/get_file.php?name=2.doc
а в скрипте get_file.php проверять права доступа и если права есть - прокачивать через скрипт файл с помощью например http://ru2.php.net/manual/ru/function.readfile.php
Цитата: |
Описание
int readfile ( string $filename [, bool $use_include_path [, resource $context ]] )
Читает файл и записывает его в буфер вывода.
Возвращает количество прочитанных из файла байт. В случае возникновения ошибки вернёт FALSE, если только функция не была вызвана как @readfile(), и выведет сообщение об ошибке.
|
|
_____________________________ IRC WeNet #programming
jid: seb2000@jabber.ru
|
|
|
|
|
|
|
Возраст: 39 C нами с 01.10.2006 Репутация: 275
|
|
Так ведь readfile водровский файл в виде абракадабры выводит. А мне нужно, чтобы пользователь скачал свой файл с сервера на свой компьютер...
|
_____________________________ Написать неработающую программу легче, чем разобраться в работающей
|
|
|
|
|
|
|
Возраст: 44 C нами с 05.04.2005 Репутация: 121.1
|
|
Svetic писал(а): |
Так ведь readfile водровский файл в виде абракадабры выводит. А мне нужно, чтобы пользователь скачал свой файл с сервера на свой компьютер...
|
браузер определяет что нужно делать с файлом и какой это файл по заголовку полученному с сервера. просто скажи браузеру что это .doc файл и что его нужно скачать а не показать. как-то так:
<?php
. . .
if ( have_rights($user) ) {
header ("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Length: ' . filesize(тынц тынц));
header('Content-Disposition: attachment; filename=' . basename(тынц тынц));
header("Content-Transfer-Encoding: binary");
readfile(тынц тынц);
} else {
echo 'несанкционированный доступ запрещён';
}
?> | Content-type - вот это как раз и есть "тип файла". если указать тут тип файла соответствующий MS Word .doc файлу - то браузер например может запустить ворд в своём окошке. application/octet-stream обычно заставляет браузер показать окошко с предложением скачать файл.
ps: по умолчанию обычно из php в заголовке отправляется что тип файла - текст, поэтому браузер и пытается его показать как есть.
|
_____________________________ IRC WeNet #programming
jid: seb2000@jabber.ru
|
|
|
|
|
|
|
C нами с 07.10.2007 Репутация: 78.2
|
|
Moderation by baldahin @ 14 Янв 2008, 22:54: |
в этой теме обсуждают конкретные технические вопросы. предупреждение за офтопик |
|
|
|
|
|
|
|
|
Возраст: 36 C нами с 24.01.2005 Репутация: 196.8
|
|
Народ, видел когдато давно в инете страницу 404 тока там за место ошибки такая фигня, типа в рамке как будето кто-то печатает, типа Этой страницы не существует, наверное её забыли, или админы пьяны, я им передам..... итд.. мож кто видел такую в нете?
|
_____________________________ гхщ.
|
|
|
|
|
|
|
На страницу « 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25 »
|
|