ugrás a tartalomhoz

csoportos módosítás

palos61 · 2009. Már. 12. (Cs), 09.42
Üdv mindenkinek
Segítséget kérnék az alábbi kód átalakításához.
Lekérdezek egy táblát, kiíratom soronként, de a mező egy legörbülő mezőbe kerül.
Ekkor több sor átjavításával egyszerre több elemet tudok felvinni (módosítani) a táblába.
Csak az a baj, hogy nekem nem legördülő, hanem beviteli mező kellene, ami ki is írja a cella tartalmát!

//// A sor kiíratva:

<select name="kedvezmeny[]" size="1" style="background:<?= $urlapmezo?>;font-family:tahoma;font-size:9pt;color:<?= $gombszoveg?>;padding:0px">
<option value="<?= $kedvezmeny?>" selected><?= $kedvezmeny?></option>
<?
for ($i=1;$i<50;$i++) {
?>
<option value="update ugyfel set kedvezmeny=<?= $i?> where id=<?= $id?>"><?= $i?></option>
<?
}

?>
</select>&nbsp;%-lék.<br><br>

/// müvelet

if (isset($kedvezmeny)) {
foreach ($kedvezmeny as $elem) {
mysql_query(stripslashes($elem));
}
 
1

Pontosítsunk

Poetro · 2009. Már. 12. (Cs), 16.52
Most akkor pontosan mi is a probléma, milyen mező kerül soronként mezőbe? Vagy hogyisvanez?
Mi a baj a legördülővel? A legördülő az nem beviteli mező?
A legjobb lenne talán ha lerajzolnád, vagy lefestenéd, vagy ilyesmi.
2

Bocsi ha nem voltam

palos61 · 2009. Már. 12. (Cs), 17.28
Bocsi ha nem voltam érthető.

"select" mező helyett kéne "input" mező. De ha az input mezőt használok nem tudom megadni a "<option value="update ugyfel set kedvezmeny=<?= $i?> where id=<?= $id?>"> parancsot, mert akkor nem írja ki az értéket.
A legörgülő azért nem jó mert itt bármi bekerülhet a mezőbe.

Remélem így érthető voltam.

Előre is köszi!
3

INPUT

Poetro · 2009. Már. 12. (Cs), 17.43
  1. <form action="" method="post">  
  2.   <!-- egy sor kiírása -->  
  3.   <label>Kedvezmény:   
  4.     <input type="text" value="<?php echo htmlspecialchars($i, ENT_QUOTES);?>"   
  5.       name="kedvezmeny[<?php echo htmlspecialchars($id,  ENT_QUOTES);?>]" />&nbsp;%  
  6.   </label>  
  7. ...<!-- kiírunk még jópár ilyet... -->  
  8. <?php  
  9. if (isset($_POST['kedvezmeny']) && is_array($_POST['kedvezmeny'])) {  
  10.   foreach ($kedvezmeny as $id => $kedvezmeny) {  
  11.     mysql_query(sprintf("UPDATE ugyfel SET kedvezmeny = %d WHERE id = %d",   
  12.       $kedvezmeny$id));  
  13.   }  
  14. }  
  15. ?>  
4

Sajna nem mükszik. Ez egy

palos61 · 2009. Már. 12. (Cs), 19.59
Sajna nem mükszik. Ez egy tábla lekérdezés után van így az értéket amit meg akarok változtatni ki kéne íratni a mezőben. És annak az átírásával az új érték kerülne frissítésre. Ez egy "bigint" tehát szám!

De amit írtál nem vész kárba máshol tök jól működik. Köszi!
5

Sajnos

Poetro · 2009. Már. 12. (Cs), 20.08
Mivel nem tudom kitalálni a gondolataidat, és a kódot se ismerem, így ezen túl nem tudok segíteni.
6

Dehogynem. Én jól leírtam, te

palos61 · 2009. Már. 12. (Cs), 20.27
Dehogynem. Én jól leírtam, te meg tök jól segítettél! Egy kicsit át kellett írni és most tökéletesem működik!

Király vagy 1000 köszönet!