Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 161
  • Last Modified:

populate drop down from file listing

I am having issues connecting the dots here.  I have a bit of php that will list each file in a folder.  I want to take that data and populate a pulldown.  Here is the code I have.  I know it is something simple, but I just can't piece it together.

Thanks
<?
$path = "../media";
$dh = opendir($path);
$i=1;
while (($file = readdir($dh)) !== false) {
    if($file != "." && $file != "..") {
        echo "$i. <a href='$path/$file'>$file</a><br />";
?>
		<script="javascript">
		var objDropdown = document.getElementById('files');
		var objOption = new Option(<? $file ?>,<? $file ?>);
		document.write(objOption.value);
		objDropdown.options[objDropdown.length] = objOption;
		</script>
<?
        $i++;
    }
}
closedir($dh);
?>

Open in new window

0
prostang
Asked:
prostang
  • 2
  • 2
1 Solution
 
gr8gonzoConsultantCommented:
What is the surrounding code? Can you post the whole page?
0
 
prostangAuthor Commented:
Here is most of the code for the page (I also included the original code).  above this is database connection and behaviors in PHP.
<?
$path = "../media";
$dh = opendir($path);
$i=1;
while (($file = readdir($dh)) !== false) {
    if($file != "." && $file != "..") {
        echo "$i. <a href='$path/$file'>$file</a><br />";
?>
		<script="javascript">
		var objDropdown = document.getElementById('files');
		var objOption = new Option(<? $file ?>,<? $file ?>);
		document.write(objOption.value);
		objDropdown.options[objDropdown.length] = objOption;
		</script>
<?
        $i++;
    }
}
closedir($dh);
?>
 
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Award Winning Sausage</title>
<link href="../NewSite/css/JSS_styles.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
 
 
#MainDiv {
	height: 500px;
	width: 900px;
	border: medium solid #FFFFFF;
	margin-right: auto;
	margin-left: auto;
	background-color: #8CC63F;
}
 
/* CSS Document */
 
#header {
	height: 200px;
	width: 900px;
	background-image: url(../images/JoeSHeaderDatabase.png);
	margin-right: auto;
	margin-left: auto;
}
body {
	background-repeat: no-repeat;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	background-color: #FDB200;
}
-->
</style>
<script src="../NewSite/Scripts/AC_RunActiveContent.js" type="text/javascript"></script>
<link href="../css/JSS_styles.css" rel="stylesheet" type="text/css" />
</head>
 
<body>
<div class="header" id="header"></div>
<div class="MenuDiv" id="MenuDiv"><a name="Menu" id="Menu"></a>
  <table width="900" border="0" align="center">
    <tr>
      <td width="100">&nbsp;</td>
      <td width="300"><div align="center"><a href="../NewSite" target="_blank">Main Site</a></div></td>
      <td width="300"><div align="center"><a href="./">Admin Home</a></div></td>
      <td width="100">&nbsp;</td>
    </tr>
  </table>
</div>
<div class="MainDiv" id="MainDiv">
  <p>&nbsp;</p>
    <p>&nbsp;</p>
 
    
    <form action="<?php echo $editFormAction; ?>" method="POST" enctype="multipart/form-data" name="form1" id="form1">
      <table width="500" border="0" align="center">
        <tr>
          <td width="410"><div align="right">Date:</div></td>
          <td width="19">&nbsp;</td>
          <td width="57"><input type="text" name="date" id="date" /></td>
        </tr>
        <tr>
          <td><div align="right">Message:</div></td>
          <td>&nbsp;</td>
          <td><textarea name="message" cols="50" rows="3" id="message"></textarea></td>
        </tr>
        <tr>
          <td><div align="right">Permanent:</div></td>
          <td>&nbsp;</td>
          <td><input type="checkbox" name="permanent" id="permanent" /></td>
        </tr>
        <tr>
          <td colspan="3"><div align="center">
            <select name="files" id="files">
            </select>
            </div></td>
        </tr>
        <tr>
          <td colspan="3">&nbsp;</td>
        </tr>
        <tr>
          <td colspan="3"><div align="center">
            <input type="submit" name="sumit" id="sumit" value="Submit" />
            <input type="reset" name="cancel" id="cancel" value="Cancel" />
</div></td>
        </tr>
      </table>
      <p>&nbsp;</p>
      <p>&nbsp;</p>
      <input type="hidden" name="MM_insert" value="form1" />
    </form>
    <script>
var mydate=new Date()
var theyear=mydate.getYear()
if (theyear < 1000)
theyear+=1900
var theday=mydate.getDay()
var themonth=mydate.getMonth()+1
if (themonth<10)
themonth="0"+themonth
var theday=mydate.getDate()
if (theday<10)
theday="0"+theday
 
//////EDIT below three variable to customize the format of the date/////
 
var displayfirst=theyear
var displaysecond=themonth
var displaythird=theday
 
////////////////////////////////////
 
document.form1.date.value=displayfirst+"-"+displaysecond+"-"+displaythird
</script>
    </div>
<div id="Footer"> <a name="FooterAnchor" id="FooterAnchor"></a>Copyright &copy; 2009 Joe S. Sausage | All Rights Reserved | Website Designed by: <a href="http://www.mjm-consulting.com" target="_blank">MJM Consulting, LLC</a></div>
</body>
</html>
<?php
mysql_free_result($messages);
?>

Open in new window

0
 
gr8gonzoConsultantCommented:
Try:

$selectOptions = "";
$dh = opendir($path);
$i=1;
while (($file = readdir($dh)) !== false) {
    if($file != "." && $file != "..") {
        echo "$i. <a href='$path/$file'>$file</a><br />";
        $selectOptions .= "<option value='{$file}'>{$file}</option>\n";
        $i++;
    }
}
closedir($dh);

then go down the page to your <select> tag and use $selectOptions:
            <select name="files" id="files">
            <? print $selectOptions; ?>
            </select>
0
 
prostangAuthor Commented:
That was it.  Thanks!
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now