|
|
|
| у меня в таблице authors есть поле photo, текстовое, в котором хранятся пути к фотографиям. столкнулась с проблемой. пытаюсь изменить значение этого поля:
update authors set photo=".\photo\my.jpg"
where id_author=1;
Пишет Query OK.
Далее, для начала, в пхп коде просто хочу увидеть все фотки на страничке из базы:
<?php .............
$result = mysql_query("select * from authors");
while ($row = mysql_fetch_object($result)) {
if ($row->photo!="") {?>
<img src=<?php $row->photo ?>/>
<?php }
else {echo ("Фотография отсутствует");}
} ?>
..
и имею в результате красный крестик и несколько надписей "фото отсутствует", где значение поля не задано.
если в src для img напрямую прописываю ".\photo\my.jpg", то всё работает.
решила посмотреть что же записалось в бд
select photo from authors;
а там, в поле photo стоит ".photomy.jpg"
То есть куда-то делись слэши "\"!!!
Причём если задаю поле значение "./photo/my.jpg", то оно не коверкается, символы не исчезают,
но и картинка по найденному пути не находится. я работаю в windows.
Чего мне делать то :( | |
|
|
|
|
|
|
|
для: spiritos
(19.10.2006 в 08:56)
| |
<?
// Обратные слэши нужно экранировать. Причем, как в PHP :
$jpg = ".\\photo\\my.jpg";
// так и в MySQL:
$str = "'".mysql_escape_string($jpg). "'";
// и только после этого подставлять в запрос:
$sql = "update authors set photo=$str where id_author=1";
mysql_query($sql);
?>
|
В этом примере
в $jpg будет строка
в $str будет строка
в $sql будет строка
update authors set photo='.\\photo\\my.jpg' where id_author=1
|
Последняя является корректным sql-запросом, выполняющим то, что Вам нужно. | |
|
|
|
|
|
|
|
для: Trianon
(19.10.2006 в 09:31)
| | Спасибо огромное!!!!!!! работает :)) | |
|
|
|
|
|
|
|
для: spiritos
(19.10.2006 в 11:38)
| | ну то есть я пока проверила только в mysql и там действительно появилась в таблице нужная мне строка..
а вот при вставке php в html не могу добиться чтобы отобразилась картинка, не находит путь.
где ошибка в строчке
<img src=<?php $row->photo ?>/>
при том, что echo ($row->photo) выводит на экран верный путь .\foto\my.jpg
Более того, <img src=<?php ".\foto\my.jpg" ?>/> или <img src=<?php ".\\foto\\my.jpg" ?>/> тоже не работает(... | |
|
|
|
|
|
|
|
для: spiritos
(19.10.2006 в 13:23)
| |
<img src="<?php echo $row->photo; ?>"/>
|
или
<img src="<?= $row->photo ?>"/>
|
| |
|
|
|
|
|
|
|
для: Trianon
(19.10.2006 в 13:44)
| | оо!! теперь я окончательно щАслива!!))) | |
|
|
|
|
|
|
|
для: spiritos
(19.10.2006 в 13:56)
| | Это врядли.
Вообще-то пути с обратными слэшами в интернет-ссылках не приняты, и запросто могут не работать. | |
|
|
|
|
|
|
|
для: Trianon
(19.10.2006 в 14:05)
| | так получается всё дело не в слешах, а в том что неправильна была строка img..
ну зато разобралась)
теперь разумеется работает и в случае если в бд занести пути с прямыми слешами. оставлю прямые. | |
|
|
|