Mailinglisten-Archive |
Steffen Kother wrote: > Hallo Leute, > > trotz des herrlichen Wetters draussen und des vielen Sonnelichts komme > ich nciht weiter. > > Bei einer "Sicherheitsfrage" werden geänderte Felder wie folgt für die > UPDATE-Funktion aufbereitet: > > <snip> > foreach ($WerteArr as $Key => $kVal) { > $Tabelle.= '<input type="hidden" name="SET[]" value="'; > $Tabelle.= base64_encode($Key.'@'.$kVal).'">'."\r\n"; > } > </snip> > > "SET[]" einfach, damit ich alle mit einem Rutsch verarbeiten kann > (s.u.). Beim endgültigen Sichern sollen bestimmte $Key extra verarbeitet > werden. So hier alles, was nciht mit "INV" zu tun hat: > > <snip> > /* > $SET = Felder zu ändern in Form Schlüssel at Wert > $dSET = zerlegtes $SET, Schlüssel in $dSET[0], Wert in $dSET[1] > $cSET = Anzahl der Felder > $mSET = MySQL UPDATE-SET > $sSET = 1 sofern Schlüssel "INV" enthält sonst 0 > */ > > $SET = decode_base64($_POST['SET']); > $cSET = count($SET); > > // $mSET = ''; $mSET = array(); > for ($x = 0; $x < $cSET; $x++) { > $dSET = explode('@', $SET[$x]); > $sSET = substr_count($dSET[0], 'INV'); > > if (empty($sSET)) { > if ($dSET[0] == 'KND_NR') $dSET[0] = 'kunnr'; > if ($dSET[0] == 'VERKAEUFER') $dSET[0] = 'an'; > > // $mSET.= strtolower($dSET[0]).' = "'.$dSET[1].'"'; $mSET[] = strtolower($dSET[0]).' = "'.$dSET[1].'"'; > // if ($x + 1 < $cSET) $mSET.= ', '; > // else $mSET.= ' '; > } > } $mSET = implode( ', ', $mSET ); > </snip> > > Es bleibt aber immer noch ein Komma übrig. Geändert wurden 3 Felder (2x > anderes, 1x Bzgl. "INV"). > > "UPDATE fibu_db.probleme SET kunnr = "4711", problem = "Das...", WHERE > lfd_nr = 1". > > Gibt es da noch eine passende Möglichkeit oder muss ich es doch mit > "str_replace()" entfernen? -- Sebastian Mendel www.sebastianmendel.de www.warzonez.de www.tekkno4u.de www.nofetish.com www.sf.net/projects/phpdatetime www.sf.net/projects/phptimesheet
php::bar PHP Wiki - Listenarchive