ugrás a tartalomhoz

Lista értékének kinyerése

954rr · 2010. Már. 7. (V), 12.23
Sziasztok!
Biztosan egyszerű a megoldás, viszont én még csak most tanulom.
A problémám a következő:
Van 5 adattáblám (bc1,bc2,bc3,mgr1,mgr2),melyekbe szeretnék tárolni bizonyos adatokat.
Abba a táblába szeretnék adatokat tárolni, amelyik a listában kiválasztásra kerül.
Hogy nézne ki egy mysql parancs,ami mondjuk a választott táblába ment el egy számot?

A lista:

<select name="evf">
<option value="bc1">BC1
<option value="bc2">BC2
<option value="bc3">BC3
<option value="mgr1">MGR1
<option value="mgr2">MGR2
</select>

Parancs: $parancs = "INSERT INTO $evf (szam)VALUES (5)";
Ez így nem jó,mert valahogy ki kellene nyernem, hogy melyik elem van kiválasztva a listában. DE hogyan?

A segítséget előre is köszönöm!
 
1

Majdnem jó, de...

N0r3i · 2010. Már. 7. (V), 13.14
Szia!

Majdnem jó a dolog, de van vele néhány probléma.

Ha az egész cuccot beteszed egy formba, és teszel rá egy submit gombot is, és még a register_globals is be van kapcsolva (erősen ellenjavallt!) akkor működni fog.

És most jön a sok DE:
- a register_globals felejtős, PHP5-ben (ha jól tudom) alapból ki van kacsolva szerencsére. Ez csak annyi módosítást jelent a kódodban, hogy az SQL parancsodban a $evf helyett $_POST['evf'] kell, ha a form POST-tal küldődik el
- használj egy kicsit "validabb" html kódot: zárd le az option tag-eket </option>-nel
- gondolkozz el, hogy mi történik, ha valaki beküld egy bc4-es értéket, vagy egy "users" értéket úgy, hogy egy kicsit módosítja az űrlapot! Ezzel arra szeretnék rávilágítani, hogy semmi esetre se bízz meg egy felhasználó által beküldött adatban, minden esetben ellenőrizd feldolgozás előtt!!!

Üdv: Norbi
2

nem megy

954rr · 2010. Már. 7. (V), 13.35
register_gloabls OFF-ra állítva
form POST-tal kuldd
és így jónak kellene lennie?

$parancs = "INSERT INTO $_POST['evf'] (nevsor_id) VALUES (7)";
ha lefuttatom akkor:

Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\phpWeb\regisztracio.php on line 10
3

PHP alapok

Poetro · 2010. Már. 7. (V), 15.55
Lehet, előbb a nyelv alapjaival kellene tisztában lenni, mielőtt komolyabb fejlesztésekbe fogsz. Ebben az esetben ugye először is tudni kell, miért, és hogyan lehet változókat használni "-be foglalt szövegen.

Ebből következik, hogy ezt jópár féle képpen tudod megoldani:
$evf = $_POST['evf'];
$evfek = array("bc1", "bc2", "bc3", "mgr1", "mgr2");
if (!in_array($evf, $evfek)) {
  $evf = reset($evfek);
}
$parancs = "INSERT INTO $evf (nevsor_id) VALUES (7)";
vagy
$evf = $_POST['evf'];
$evfek = array("bc1", "bc2", "bc3", "mgr1", "mgr2");
if (!in_array($evf, $evfek)) {
  $evf = reset($evfek);
}
$parancs = "INSERT INTO " . $evf ." (nevsor_id) VALUES (7)";
vagy, amit semmiképpen nem ajánlok, mivel mindenfajta SQL Injection melegágya:
$parancs = "INSERT INTO {$_POST['evf']} (nevsor_id) VALUES (7)";
4

Köszönöm szépen a segítséget

954rr · 2010. Már. 7. (V), 16.27
Köszönöm szépen a segítséget
5

Küldetés Magas színvonalú,

bevisaxel · 2010. Május. 31. (H), 13.14
Küldetés
Magas színvonalú, gyors, gyakorlati útmutatás, hogy bármely szervezet akar létrehozni, illetve hatékonyságának javítása a technológia engedélyezési hivatal 000-P03 , a legjobb stratégiákat és taktikákat kivonat értékét ki a szellemi javak ("IA"), és közvetlen támogatja az engedélyezési, vagy eladása a kiválasztott 000-R03 szellemi tulajdon és technológiák.

Érték kivonása a Focus
1. Munkát az ügyfelekkel stratégiák kidolgozására, taktikai, szellemi tulajdon (IP) politikák és eljárások kivonás értéket 000-S01 IP-portfólió.
2. Magatartási IP és a technológia kereskedelmi workshopok, hogy a legjobb gyakorlatok végrehajtása.
3. Ólom vagy vezető erőfeszítések engedély vagy eladni szellemi eszközök széles skáláját technológiák és az ipar 0B0-410 , beleértve a gépjármű-és nonautomotive termék gyártása, és a szoftver.