2013-02-21 145 views
1

我试图不重复代码。有没有办法让这个工作,所以我不必为三个人写三次代码?原谅我的无知:我是初学者。代码重复(PHP)

$c1 = "Rufus T Firefly"; 
$c2 = "Chicolini"; 
$c3 = "Pinky"; 

for ($i=1; $i<=3; $i++){ 
    $result = mysqli_query($dbc, ' SELECT * FROM voters WHERE choice = "'. $c($i).'" '); 
    //create table... 
} 
+2

嗯,用数组吧?傻我 – 2013-02-21 15:21:34

回答

4

使用IN()

$sql = "SELECT * FROM voters WHERE choice IN('Rufus T Firefly', 'Chicolini', 'Pinky')" 
$result = mysqli_query($dbc, $sql); 

现在没有循环或需要的阵列(产生你的查询)。

+0

使用参数占位符动态生成'IN()'子句作为读者的练习。 – 2013-02-21 15:42:09

+0

我试图根据选择哪个人创建三个不同的表。此方法创建一个包含所有内容的表... – 2013-02-21 15:53:26

+0

您可以轻松地遍历这些结果,并确定用户使用“ORDER BY”和某些PHP逻辑进入哪个表。 – 2013-02-21 15:54:19