Výsledky 1 až 2 z 2

Téma: PHP & MySQL (formulář > checkbox, combobox)

  1. #1

    Standardní PHP & MySQL (formulář > checkbox, combobox)

    Zdravím Vás,
    narazil jsem na problém, který buď neumím řešit a nebo stále dokola přehlížím chybu kterou nejsem schopen objevit...

    Na web stránky tahám data z tabulky "potraviny", zobrazování tabulky na stránce "index.php" je v pohodě. Problém nastává s administrací na stránce "admin.php".
    Totiž na stránce Admin.php je <form> do které se načtou práve data z tabulky (do jednotlivých políček <input> a na konci každého řádku je tlačítko "OK", které následně nahraje změněné data zpět do DB..
    Obrázek indexu:
    index.jpg

    Obrázek administrace:
    admin.jpg

    V administraci je tedy spoustu <input> tagů, ve kterých lze změnit obsah pole a následným stiskem "OK" tyto změny uložit do DB...

    Problém č.1 = Checkbox
    V dřívější verzi jsem první dva sloupečky řešil pomocí čísel 0/1 (a políčko bylo <input type="text">), nyní jsem to chtěl nahradit checkboxem.
    Jaký má být správný typ pole v mysql ? (BIT nebo TINYINT ?)
    - pokud BIT, pak ale při odesílání FORM se mi odesílá hodnota "on" namísto čísla 0/1
    - pokud TINYINT, pak mi zlobí zobrazování již zatržených políček, případně jejich nové odesílání (např pole je zatržené (checked), já změním hodnotu např u názvu zboží, a po odeslání je mi celý řádek označí jako kdybych jej NEMĚL zatržený...)

    Problém č.2 = Combobox
    U některých políček nejde hodnota přepisovat, ale musíte si vybrat z přednastaveného (prostě combobox), jak mám ale udělat, aby když se natáhne databáze, tak aby se v Combáči vybral (selected) ten správný údaj

    Příklad:
    - ve sloupci DPH jsou na výběr 3 položky (id:1 = 15%; id:2 = 21%; id:3 = 0%)
    No a některé zboží, může mít dph 21%, ale jak mám při načtení DB říct, že zrovna tenhle řádek bude mít vybráno (selected) druhou "option: 21%" ?

    Mimochodem zkoušel jsem toto, ale nefunguje to jak by mělo:
    Před výpis z $sql jsem umístil

    Kód:
    if ($zaznam[dph.id] == 1)
      $dph1 = "selected";
    elseif ($zaznam[dph.id] == 2)
      $dph2 = "selected";
    elseif ($zaznam[dph.id] == 3)
      $dph3 = "selected";
    else
      $dph0 = "";
    A do každé z option jsem umístil $dph1, 2 a nebo 3
    Kód:
    <select name="admindph">
      <OPTION value="15%" "'.$dph1.'"></option>
      <OPTION value="21%" "'.$dph2.'"></option>
      <OPTION value="0%" "'.$dph3.'"></option>
    </select>
    Bohužel toto nefunguje dobře. Zobrazí se normálně řádky s 15%, a pokud to narazí na první řádek s 21%, tak pak všechny následující řádky mají "selected" jak u 15%, tak u 21%.
    Paul Atreides
    NPE-squad.com - Clan Leader

    COMP: Win7 x64 prof. | C2D E8400 3Ghz | ASUS P5B DeLuxe | Corsair 6000 MB DDR2 800MHz | ASUS GTX 560 Ti 1GB-DDR5 | SB Audigy SE 7.1 | Seagate 1000GB & 500GB (šuple WD 320GB) | Corsair 520W | 26" LG fullHD 1920x1080px 8ms
    NAS-server: Win Home Server 2011 | 1,6 Atom D525 (2 core | 4 threads) | ASrock mini-ITX | 4 GB DDR3 800MHz | Western 1TB GreenPower | Fortron 200W 80-BronzePlus | ftp, web, mumble, vpn, Servio DLNA share system, komplet PLEXI case
    NetBook: ASUS Eee1001PQ (violet) | 1,6 ATOM | 1 GB RAM | 250GB HDD | 1024x600 px LCD | baterie 7h :)
    FOTO: Olympus E-520 | 14-42 ZuikoDigital | 40-150 ZuikoDigital

  2. #2

    Standardní Re: PHP & MySQL (formulář > checkbox, combobox)

    Tak už jsemto nakonec vyřešil - pokud by někoho zajímalo jak, tak to eventuelně připíšu, ale vzhledem k tomu že nebyla reakce, nechal bych to takhle..
    Paul Atreides
    NPE-squad.com - Clan Leader

    COMP: Win7 x64 prof. | C2D E8400 3Ghz | ASUS P5B DeLuxe | Corsair 6000 MB DDR2 800MHz | ASUS GTX 560 Ti 1GB-DDR5 | SB Audigy SE 7.1 | Seagate 1000GB & 500GB (šuple WD 320GB) | Corsair 520W | 26" LG fullHD 1920x1080px 8ms
    NAS-server: Win Home Server 2011 | 1,6 Atom D525 (2 core | 4 threads) | ASrock mini-ITX | 4 GB DDR3 800MHz | Western 1TB GreenPower | Fortron 200W 80-BronzePlus | ftp, web, mumble, vpn, Servio DLNA share system, komplet PLEXI case
    NetBook: ASUS Eee1001PQ (violet) | 1,6 ATOM | 1 GB RAM | 250GB HDD | 1024x600 px LCD | baterie 7h :)
    FOTO: Olympus E-520 | 14-42 ZuikoDigital | 40-150 ZuikoDigital

Informace o tématu

Users Browsing this Thread

Toto téma si právě prohlíží 1 uživatelů. (0 registrovaných a 1 anonymních)

Podobná témata

  1. [HTML] - checkbox
    Založil Braindead v sekci fóra Programování
    Odpovědí: 12
    Poslední příspěvek: 29.03.2005, 03:23
  2. Formulař faktury - vyřešeno
    Založil Lisak v sekci fóra Programy a problémy s nimi
    Odpovědí: 7
    Poslední příspěvek: 26.09.2004, 19:58
  3. jak vytvořit jednoduchy formulář na webu?
    Založil franky frederiks v sekci fóra Programování
    Odpovědí: 6
    Poslední příspěvek: 19.07.2004, 13:18
  4. [PHP] formulář
    Založil Aladar72 v sekci fóra Programování
    Odpovědí: 6
    Poslední příspěvek: 21.05.2004, 08:34
  5. [PHP] Vícestránkový formulář
    Založil Braindead v sekci fóra Programování
    Odpovědí: 70
    Poslední příspěvek: 24.10.2003, 21:46

Pravidla přispívání

  • Nemůžete zakládat nová témata
  • Nemůžete zasílat odpovědi
  • Nemůžete přikládat přílohy
  • Nemůžete upravovat své příspěvky
  •