PHP + CSS>使用下拉列表从管理控制面板更改图像样式
我的网站主页上显示了一个图像,我需要在其一部分上放置另一个较小的图像(实际上是折扣贴纸 像这样)。
这很容易用 CSS 实现,但这里的问题是:我想在管理控制面板上实现一个下拉列表,以在不同的图像(女巫将有不同的颜色)或根本没有图像之间进行选择。这是一个简单的 PHP 网站,而不是 Wordpress。
在 Google 上寻找它时,我遇到了这个问题 关于使用下拉列表更改页面主题。我认为原理是完全相同的,但我无法找出适合我的解决方案。
我只是在寻找能为我指明正确方向的人,因为当我尝试在 Google 上搜索它时,我总是看到诸如“如何使用 css 设计下拉列表/选择样式?”之类的页面...我很欣赏任何人愿意提供帮助。
I have an image displaying on my website homepage, and I need to place another smaller image over part of it (actualy a discount sticker like this).
This is easily implemented with CSS, but the catch here is: I want to implement a drop down list on the admin control panel to choose between different images (witch will have different collors) or no image at all. It's a simple PHP website, not Wordpress.
Looking for it on Google I came across this question about using a drop down list to change a page's theme. I think the principle is quite the same, but I'm not able to figure out a solution that suits me.
I'm just looking for someone that point me the right directions to look for, because when I try to search Google for it, I always see pages like "How do I css style a dropdownlist/select?"... I appreciate anyone willing to help.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
示例(主要是逻辑)
1 - 您可以将图像名称存储在单独的数据库表中
: discount_stickers
2 - 在保存设置的表中为您的网络应用程序添加新行
表:app_settings
值 0 表示无贴纸,值大于零表示从表 discount_stickers 中选定图像的 ID (柱子:
image_id
)。app_settings 表中的这一行保留您的选择。
3 - 生成 discount_stickers 表元素的下拉框。
然后在管理面板中(以表单形式)在您想要的位置回显您的
$dropdown_code
。你会得到类似的东西(根据我的例子)
4 -现在编写提交脚本以将 SELECT 值存储到数据库(表 app_settings,行
setting=STICKER_ID
)。您可以使用 AJAX 进行更新或常规表单提交来发送请求。5 - 现在您需要的只是在将贴纸贴到图像上时从数据库中获取该值。使用此值从 discount_stickers 表中获取文件名,并使用该文件名创建带或不带贴纸的 HTML 块(通过 PHP 代码设置样式属性)。
6 - 在页面上显示新图像(将 HTML 代码放在您想要的位置)。
此外,您可以在一张图像中使用所有贴纸并将坐标存储在数据库中。稍后通过设置适当的 CSS 样式参数来显示该图像的适当部分。
当然,也...您可以使用 GD 库或 ImageMagick 生成带(或不带)贴纸的输出图像。那么您就不需要 HTML 代码(DIV、CSS 等)。
Example (mostly logic)
1 - You can store your image-names in separate database table
table: discount_stickers
2 - In table where you keep settings for your web-application add new row
table: app_settings
Value 0 means no sticker, value greater than zero means ID of selected image from table discount_stickers (column:
image_id
).This row in table app_settings keeps your choice.
3 - Generate dropdown box of discount_stickers table's elements.
Then echo your
$dropdown_code
where you want in admin panel (in form).You'll have something like this (according to my example)
4 - Now write submit script to store SELECTs value to your database (table app_settings, row where
setting=STICKER_ID
). You can use AJAX for update or regular form submit to send request.5 - All you need now is to get this value from database when you are about to attach sticker to your images. Use this value to fetch file name from discount_stickers table and use that file name to create HTML block with or without sticker (setting style property from PHP code).
6 - Display new image on your page (put HTML code where you want).
Also, you can use all stickers in one image and store coordinates in database. Later show appropriate part of that image by setting appropriate CSS style parameters.
Of course, also... you can generate output image with (or without) sticker using GD library or ImageMagick. Then you don't need HTML code (DIVs, CSS, etc).
您可以将更改处理程序挂接到下拉列表上,如下所示:
此代码假设您正在使用 jQuery。
You could hook the change handler on the dropdown like this:
This code assumes you are using jQuery.