You are here: Re: Using arrays to take records from a html table and update database « PHP SQL « IT news, forums, messages
Re: Using arrays to take records from a html table and update database

Posted by PSI_Orion on 07/26/06 11:49

If I understand you correctly, the way I would do it is the same way I have
my DVD database. This is rather than have the name of the elements as
"commindex[]" etc, actually place the table creation inside your while loop
and increment the naming field using the i variable you use, ie:
"commindex[<?=$i?>]".

As an example of what I mean, here is an excerpt of my DVD database code
which you can view at "http:// mydvds . psiss . com"

------------------------------------------------------
if($allRecords > 0)
{
$recordCount = 0;
while($recordCount < $allRecords)
{
if(($recordCount / 2) % 2 == 1)
{
?>
<tr align="center" class="tr_even">
<?
}
else
{
?>
<tr align="center" class="tr_odd">
<?
}
for($colCount = 0; $colCount < 2 && $recordCount < $allRecords;
$colCount++)
{
$dataArray = mysql_fetch_array($result);
$dataArray['starring'] = str_replace("\r","<BR>",$dataArray['starring']);
$dataArray['synopsis'] = str_replace("\r","<BR>",$dataArray['synopsis']);
$dataArray['duration'] = date('H:i',strtotime($dataArray['duration']));
?>
<td background="images/barSilver.jpg" width="30"><?=($recordCount +
1)?></td>
<td width="4">&nbsp;</td>
<td>
<div class="div_info" style="position: absolute; width: 400px;
z-index: 1; visibility: hidden;" id="infoLayer_<?=$recordCount?>"
align="left"><b><u><?=$dataArray['title']?></u></b><p><u>Starring:</u><br><i><?=$dataArray['starring']?></i></p><p><?=$dataArray['synopsis']?></p></div>
<?
if($dataArray['dvd_image'] == "None")
{
?>
<img id="img_<?=$recordCount?>" width="50" height="70"
src="images/dvds/none_small.jpg"
onmouseover="popShow(this,img_<?=$recordCount?>,'infoLayer_<?=$recordCount?>',img_<?=$recordCount?>.width
+ 5,5)" onmouseout="popHide('infoLayer_<?=$recordCount?>')">
<?
}
else
{
?>
<img id="img_<?=$recordCount?>" width="50" height="70"
src="images/dvds/<?=$dataArray['dvd_image']?>"
onmouseover="popShow(this,img_<?=$recordCount?>,'infoLayer_<?=$recordCount?>',img_<?=$recordCount?>.width
+ 5,5)" onmouseout="popHide('infoLayer_<?=$recordCount?>')">
<?
}
echo " <img
src='images/certs/".$certImage[$dataArray['certificate']].".gif'><BR>".$dataArray['title'];
?>
</td>
<td width="4">&nbsp;</td>
<td><b>Released</b><br><?=$dataArray['year']?><br>
<b>Duration</b><br><?=$dataArray['duration']?><br>
<b>Rating</b><br><img alt="Rating: <?=$dataArray['rating']/2?>"
align="absmiddle"
src="images/ratings/pips<?=$dataArray['rating']?>.gif"></td>
<td width="4">&nbsp;</td>
<?
$recordCount++;
}
?>
</tr>
<?
}
}
----------------------------------


"Ian Davies" <iandan.dav@virgin.net> wrote in message
news:j3wxg.1067$u4.703@newsfe3-win.ntli.net...
> Hello
> Needing help with a suitable solution.
> I have extracted records into a table under three columns 'category',
> 'comment' and share (the category column also holds the index no of the
> record in a hidden field)
> I wish the user to be able to edit the data in the table, so I have
> extracted the records into hiddenfield, textareas, dropdown list and
> checkbox so that they can make changes.
> I named these elements as arrays and wish to run an sql to take each row
> in
> turn (and any changes made) and update the mysql table. I did something
> similar with just one record but am stuck as to how I use the arrays of a
> number of form elements together
>
> My code for the table is below but I dont know how the script should go
> when
> the form is submitted to add each row in turn
> Help greatly appreciated
> Ian
> **********************************************************************
> <form action="commentselect.php" method="post"
> enctype="multipart/form-data"
> name="UpdateComments">
> <table width="100%" border="0" cellpadding="0" cellspacing="2"
> bgcolor="#FFFFFF">
> <tr align="center" class="ListHeading">
> <td width="20%" height="31">Category</td>
> <td width="60%" height="31">Comment</td>
> <td width="10%" height="31">Share</td>
> </tr>
> <tr class="BodyText">
> <?php
> while($row =& mysql_fetch_array($commentresults)) {
> extract($row);
>
> if ($i%2) {
> $class = 'row1';
> echo "<TR bgcolor=\"#CCCCCC\">\n";
>
> } else {
> $class = 'row2';
> echo "<TR bgcolor=\"white\">\n";
> }
> $i += 1;
> ?>
> <td width="20%" align="left" class="bodytext"><select
> name="category[]" style="WIDTH: 90%">
> <option value="<?php echo $row['TypeID']; ?>"><?php echo $row['typedesc'];
> ?></option>
> <?php
> $commenttype = mysql_query("SELECT * FROM commenttype WHERE username =
> '$username'");
> if (!$commenttype) {
> exit('<p>Error performing query: ' . mysql_error() . '</p>');
> }
> while($row1 =& mysql_fetch_array($commenttype)) {
> extract($row1);
> ?>
> <option value="<?php echo $row1['TypeID']; ?>"><?php echo
> $row1['typedesc']; ?><br>
> </option>
> <?php
> }
> ?>
> </select>
> <input name="commindex[]" type="hidden" value="<?php echo $commindex;
> ?>"></td>
> <td width="60%" align="left" class="bodytext"> <textarea
> name="comm[]" rows="2" style="WIDTH: 99%"><?php echo $comment;
> ?></textarea></td>
> <td width="10%" align="center" class="bodytext"><input
> type="checkbox"
> name="avail[]" value="checkbox" <?php share($available); ?>> </td>
> </tr>
> <?php
> }
> ?>
> </table>
> </form>
>
> ************************************************************
>
>

 

Navigation:

[Reply to this message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация