#php #html #mysql
#php #HTML #mysql
Вопрос:
У меня есть содержимое, хранящееся в mysql, следующим образом:
<table width="450" cellspacing="1" cellpadding="1" border="1">
<tbody>
<tr>
<td><img width="513" height="680" align="left" alt=" src="/userfiles/image/pic.jpg" /></td>
<td><img width="315" height="700" align="left" alt=" src="/userfiles/image/DSC_0389.JPG" /></td>
<td><img width="580" height="320" align="left" alt=" src="/userfiles/image/ktxh.jpg" /></td>
</tr>
</tbody>
</table>
Когда я загружаю из БД, PHP и отображаю в html с помощью PHP, проблем нет.
Теперь я хочу, чтобы все изображения отображались с фиксированной шириной и высотой 200 X 200, А ГРАНИЦА ТАБЛИЦЫ = ‘0’
<table width="200" cellspacing="1" cellpadding="1" border="0">
<tbody>
<tr>
<td><img width="200" height="200" align="left" alt=" src="/userfiles/image/pic.jpg" /></td>
<td><img width="200" height="200" align="left" alt=" src="/userfiles/image/DSC_0389.JPG" /></td>
<td><img width="200" height="200" align="left" alt=" src="/userfiles/image/ktxh.jpg" /></td>
</tr>
</tbody>
</table>
Как мне решить эту проблему?
Комментарии:
1. $содержимое в mysql: amp; < ширина таблицы = amp; quot; 450 amp; quot; cellspacing= amp; quot;1 amp; quot; cellpadding= amp; quot;1 amp; quot; граница = amp; quot; 0 amp; > amp; < tbody amp; > amp; < tramp; > amp; < td amp; > amp; < img width= amp; quot; 513 amp; quot; height = amp; quot;680 amp; quot; align= amp; quot;leftamp; quot; alt = amp; quot; src= amp; quot;/userfiles/image/pic.jpg» />amp; </td > ……… и т.д…. ;</таблица>
2. Вы можете попробовать синтаксический анализатор HTML или РЕГУЛЯРНОЕ ВЫРАЖЕНИЕ для $content.
3. я пытался, но не могу получить результат: $newWidth = 200; $ newHeight = 200; $content = preg_replace( array(‘/ width=» d «/i’, ‘/ height=» d » /i’), array(sprintf(‘width=»%d»‘, $newWidth), sprintf(‘height=»%d»‘, $newHeight)), $content);
Ответ №1:
Замените этим кодом и css
<style>
.cstm
{
width:200px;
height:200px
}
table
{
border:0
}
</style>
<table width="200" cellspacing="1" cellpadding="1" border="0">
<tbody>
<tr>
<td><img class="cstm" align="left" alt=" src="/userfiles/image/pic.jpg" /></td>
<td><img class="cstm" align="left" alt=" src="/userfiles/image/DSC_0389.JPG" /></td>
<td><img class="cstm" align="left" alt=" src="/userfiles/image/ktxh.jpg" /></td>
</tr>
</tbody>
</table>
Комментарии:
1. о нет, нельзя жестко назначить с помощью css. содержимое $ будет считываться из mysql ($child_article[6]) и отображаться в html с помощью динамического кода: $sql_article = «выбрать * из статей, где утверждено = 1 и article_cat = {$child[0]} {$article_cat_sql} порядок по временной метке DESC»; @$childResult_article = general_query($sql_article); если ($child_article = mysql_fetch_row($childResult_article)) echo decode_data($child_article[6]). проблема заключается в замене ширины и высоты на 200×200.
2. я не могу этого сделать, потому что $content всегда динамический, может содержать 10 изображений, может 501 изображение …. я хочу прочитать $content из mysql с помощью php и заменить ширину и высоту всех изображений на 200 x 200, а затем отправить $content на веб-сайт
Ответ №2:
Поскольку вы упомянули, что $content является динамическим, можете ли вы попробовать добавить стиль к таблице как таковой:
<style>
table td>img
{
width:200px;
height:200px
}
</style>
Комментарии:
1. таблица, созданная пользователем из FCKeditor, затем сохраняется в БД. Итак, как я могу добавить стиль к таблице с помощью php?
2. Не уверен, что для php, но вы можете использовать jQuery или JavaScript для этого. Для exp: <script> $(document). ready(функция(){ $(«img»).css({«ширина»: «200 пикселей», «высота»: «200 пикселей»}); }); </script>
3. спасибо Эддарине. Но при этом это влияет на все изображения на веб-сайте
4. я хочу сбросить всю ширину и высоту до 200 x 200 в строке $content перед печатью в html.
5. кто-нибудь может мне помочь