2013-07-18 20 views
1

我希望创建一个投票/形式,将允许用户选择观看足球比赛的起始11(或足球,如果你是美国人),然后提交它,然后看一个球迷中最受欢迎球队选择的形象(也许最受欢迎的是每个位置,而不是最受欢迎的球队选择)。创建交互式投票有了结果页

理想我想的形式具有用于形成(4-4-2,4-3-3,4-5-1等),这将改变布局/输入的形式上的选项(但,这绝对是不是必需的,只是一个很好的接触 - 否则我会坚持4-4-2)。

我的梦想的想法是,将有上有可以拖放到他们的位置的球员个人资料图片下方的仪表板;但是有简单的下拉框将工作太(只要玩家不能使用两次 - 这是另一个绊脚石,因为你不希望同样的球员在这两个位置CB)

设计理念 (结果页面将基本上是相同的只是没有底仪表盘): Quick Design Concept

我完全不知道如何处理这个,因为它是比任何我曾尝试在过去的方式更加复杂。 (忘了提及我希望能够每周重新设置结果,如果可能的话)

所以如果有人可以让我知道它是否可以,如果是的话,带我通过如何做到这一点一步一步,甚至嘲笑一个对我来说,将不胜感激。

谢谢。

+2

你看过jQuery的拖动吗?http://jqueryui.com/draggable/ –

+0

@Liam Sorsby是的,这可能是我将使用的,但它的实现形式(和其他),让我难住。 –

+0

试着看着http://jqueryui.com/droppable/这会给你一个回调,当你放弃一个对象时你可以运行脚本来修改表单。 –

回答

1

这并不一定是一个形式。

在这里,您是如何做到这一点:

  1. 创建场上平方的div。 为每个人分配一个唯一的ID,例如 ID = “正方形-1”

    ,给他们一个公共类e.g class="field-square"

  2. 对于外场的平方创建的div。给他们一个普通的班级,每个班级都有一个唯一的ID。

  3. 当你放下的广场,有提取的ID,当他们被丢弃的功能。 然后只需将它们张贴到你的PHP网站与jQuery.post()

更新

要提取的ID,在回调(你已经放弃了广场后)做这样的事情: square_id = square_id.replace('square-','');

既然你不分配的号码IDS(你应该,这样你可以很容易地让他们从数据库中更改未来的播放器),你可以简单地在你的回调使用$(this).attr('id')得到的ID。

而且查找http://api.jquery.com/jQuery.post/

+0

好的,我已经创建了布局,我将如何去解压ID并发布它们? - http://jsfiddle.net/Lighty_46/PxwkE/ –

0

我不会去想拖放在这一点下降。概述最小的可行产品将是什么,并提出一套步骤来做到这一点。

变成为关你提供我建议像这样的数据...

1)建立一个HTML表单列表只是一个所有的职位列表和所有可能的玩家,可以填补一个下拉列表位置。

2)填写表格(选择球员)和表单提交获取数据echo'd作为一个数组。 (1)服务器端(GD或Imagick可能是你想要使用的)或(2)CSS/html图片

(1)创建图形...我看到两种方法......

两者将罚款的做法....这一步或许应该被分成小步骤...先从简单地显示旁边有一个列表和玩家的图像...

HTML将

echo "<img src='/images/players".$_POST["position1"]."' alt=''/>"; 
//(NOTE YOU HAVE TO CLEAN ANY DATA YOU ARE OUTPUTTING PROPERLY) 

Imagick会像..

$bg = new Imagick("/images/bg.jpg"); 
$position = new Imagick("/images/players".$_POST["position1"]); 

//Second image is put on top of the first 
$bg->compositeImage($position, $position->getImageCompose(), 5, 5); 

//new image is saved as final.jpg 
$bg->writeImage('final.jpg'); 
+0

好吧,我想我现在工作了(目前只有守门员) - http://phpfiddle.org/main/code/pkh-ynd(Hit Run( F9)在中间)。 因此,它会输出正确的图片网址,我将如何制作该图片,以便您查看每个人提交的最受欢迎的团队内容? 因此,在您提交任何内容(E_NOTICE:类型8 - 未定义的索引:player_1 - 303行)之前它没有错误? –