Вы должны передать URL следующим образом http: // localhost: 8000 / comic_library / comic.php / 2097
$uri_path = parse_url( Вы должны передать URL следующим образом http: // localhost: 8000 / comic_library / comic.php / 2097
[110] Сначала разбейте сегменты URL и получите нужный сегмент значение массива.
SERVER['REQUEST_URI'], PHP_URL_PATH);
$uri_segments = explode('/', $uri_path);
echo $uri_segments[2]; // for http://localhost:8000/comic_library/comic.php/2097 you will get '2097'
Сначала разбейте сегменты URL и получите нужный сегмент значение массива.
Это все равно. С "ОБНОВЛЕНИЕМ... НИ НА КАКОЙ КЛЮЧЕВОЙ ВСТАВКЕ", механизм базы данных должен будет все еще проверить сначала, существует ли что-то для обновления. Следовательно никакая потребность в отдельной конструкции, даже если обновление наиболее распространено
Я пытался выяснить, каким exatcly случается так, что Вы хотите, и поскольку я вижу его, Вы не хотите делать что-нибудь, если данные соответствуют? Я не вижу решение этого, если "количество" так или иначе будет изменять и нуждаться в обновлении, Вы застреваете с INSERT INTO НА ДУБЛИРУЮЩЕМСЯ КЛЮЧЕВОМ ОБНОВЛЕНИИ (который я действительно не вижу проблему с).
Однако, если количество никогда не будет обновляться, Вы могли бы хотеть изучить, ВСТАВЛЯЮТ, ИГНОРИРУЮТ, В который проигнорирует вставку, если уникальный ключ (дата + имя) уже будет существовать.
Вы не рассмотрели "сбрасывание/вращение" Вашего плоского файла, для этого только проверяющего на добавленный материал? Или разве который не возможен?
Править:
ВСТАВКА перестанет работать немедленно из-за дублирующегося ключевого нарушения и инициирует ОБНОВЛЕНИЕ в этом случае. Не должна быть без проблем производительности вообще. Я делаю это все время на довольно большой базе данных, и я не заметил огромного различия в производительности при запуске с пустой базы данных в противоположность уже заполненной базе данных.
Однако это - вероятно, хорошая вещь работать, АНАЛИЗИРУЮТ, время от времени ПРЕДСТАВЛЯЮТ ТАБЛИЦУ В ВИДЕ ТАБЛИЦЫ/ОПТИМИЗИРУЮТ для хранения индекса в хорошем состоянии.
Почему не INSERT
достаточный? Даже если большую часть времени это - дублирующийся ключ и поэтому обновление (вместо наоборот), это - все еще корректное операционное право?
Вы просто просите проблемы производительности?