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

<form action="" method="post">
  <!-- egy sor kiírása -->
  <label>Kedvezmény: 
    <input type="text" value="<?php echo htmlspecialchars($i, ENT_QUOTES);?>" 
      name="kedvezmeny[<?php echo htmlspecialchars($id,  ENT_QUOTES);?>]" />&nbsp;%
  </label>
...<!-- kiírunk még jópár ilyet... -->
<?php
if (isset($_POST['kedvezmeny']) && is_array($_POST['kedvezmeny'])) {
  foreach ($kedvezmeny as $id => $kedvezmeny) {
    mysql_query(sprintf("UPDATE ugyfel SET kedvezmeny = %d WHERE id = %d", 
      $kedvezmeny, $id));
  }
}
?>
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!