2014-12-25 9 views
0

嗨,大家好,我需要關於php的一些典型信息。我正在創建一個有多個選項的選擇框。我有6個圖像,那麼我需要當用戶選擇1,2,3和提交然後image1,image2,image3必須顯示在頁面上,當用戶選擇2,4,6和提交然後image2,image4,image6必須顯示所以我在PHP做什麼來獲得這個代碼我trid這麼多buut沒有運氣幫助我出來謝謝。用戶提交時用selectbox獲取圖像

<form method="get"> 
     <select name="images" multiple="multiple"> 
      <option name="img" value="image">1</option> 
      <option name="img" value="image">2</option> 
      <option name="img" value="image">3</option> 
      <option name="img" value="image">4</option> 
      <option name="img" value="image">5</option> 
      <option name="img" value="image">6</option> 
     </select> 
     <input type="submit" value="submit" name="submit"> 
    </form> 

這裏是php

<?php 
//path to directory to scan. i have included a wildcard for a subdirectory 
$directory = "images/*/"; 

//get all image files with a .jpg extension. 
$images = glob("" . $directory . "*.jpg"); 

$imgs = ''; 
// create array 
foreach($images as $image){ $imgs[] = "$image"; } 

//shuffle array 
shuffle($imgs); 

//select first 20 images in randomized array 
$imgs = array_slice($imgs, 0, 20); 

//display images 
foreach ($imgs as $img) { 
echo "<img src='$img' /> "; 
} 
?> 

,但我想這方面的工作提出感謝

+0

所有選項的值都是相同的'image'。這將發送到服務器,那麼您將如何檢測用戶選擇的內容? – Pevara

回答

1

你應該引用通過命名選擇字段=「圖像[]」的用戶選擇exp:

<select name="images[]" multiple="multiple"> 
<option value="1">1</option> 
.. 
</select> 

然後在PHP中,您可以訪問提交的值$ _GET ['images']。它給你一個提交數值的順序排列

0

這個 '如果' 語句總結你的PHP代碼:

if (isset($_GET['submit'])) 
{ 
    // Your code 
} 
0

我發現了2個錯誤,你可以從那裏繼續: 1.在表單中,你必須包括一些表單的動作 - 將打開的文件的名稱提交後,將通過$ _GET接收數據。 2.你需要做一個foreach - endforeach循環,然後打印圖片,而不是重複的選項行的數據...

它應該是這個樣子:

<?php 
//path to directory to scan. i have included a wildcard for a subdirectory 
$directory = "imagesend/*/"; 

//get all image files with a .jpg extension. 
$images = glob("" . $directory . "*.jpg"); 

$imgs = ''; 
// create array 
foreach($images as $image){ $imgs[] = "$image"; } 

//shuffle array 
shuffle($imgs); 

//select first 20 images in randomized array 
$imgs = array_slice($imgs, 0, 20); 


?> 
<form method="get" action="XXX.php"> 
<select name="images" multiple="multiple"> 
<?php foreach ($imgs as $img): ?> 

<option name="<?php echo $img; ?>" value="<?php echo $img; ?>"><img src="<?php echo $img; ?>"/></option> 

<?php endforeach; ?> 
</select> 
<input type="submit" value="submit" name="submit"> 
</form> 
0

工作代碼

<html> 
<head> 
<title>Listing 9.15 A file upload script</title> 
</head> 
<?php 
if (isset($_POST['img'])) 
{ 
    $im="images/".$_POST['img'].".jpg"; 
    echo "".$im; 
    echo "<img src='".$im ."'/>"; 
} 
else 
{ 
    print "Error"; 
} 

?> 
<body> 
<form enctype="multipart/form-data" action="<?php print $_SERVER['PHP_SELF'] ?>" method="POST"> 
     <select name="img" multiple="multiple"> 
      <option value="image1">1</option> 
      <option value="image2">2</option> 
      <option value="image3">3</option> 
      <option value="image4">4</option> 
      <option value="image5">5</option> 
      <option value="image6">6</option> 
     </select> 
     <input type="submit" value="submit" name="submit"> 
    </form> 
</body> 
</html>