MarisJanis Posted November 25, 2016 Report Posted November 25, 2016 Sveiki, kungi, Lūdzu, palīdziet iesācējam php un mysql jomā. Sekojoša situācija - vienā mysql DB ir divas tabulas - table1 un table2, table1 sastāv no kolonnām "a", "b" un "c", table 2 ir kolonnas "d", "e" un "f". Jautājums - kā panākt, lai html/php formā, kura nodod datus 'table2' kollonā "e" ievieto konkrētu ierakstu (pieņemu, ka tas ir query rezultāts) no table1 "c" kolonnas. Respektīvi, table2 formā "e" kollonas laukam ir kaut kāds dropdown list no table1 "c" kollonas, lietotājs izvēlas vienu vērtību un tā tiek saglabāta table2 "e" laukā. MS accessā tas darbojas vienkārši, bet kā to izdarīt ar php/mysql. Pateicos! Quote
jurchiks Posted November 25, 2016 Report Posted November 25, 2016 (edited) $c = $pdo->query('SELECT DISTINCT c FROM table1 ORDER BY c ASC')->fetchAll(PDO::FETCH_COLUMN); Formā: <select name="c"> <?php foreach ($c as $record) { echo '<option value="', $record, '">', $record, '</option>'; } ?> </select> Formas apstrādē: $stmt = $pdo->prepare('INSERT INTO table2 (d, e, f) VALUES (?, ?, ?)'); $stmt->execute($d, $e/*<-- šeit iet tavs select value */, $f); Bet vispār, datubāzēs nav tāds jēdziens "'table2' kollonā "e" ievieto konkrētu ierakstu". Tu neievieto ierakstu kolonnā, tu ievieto ierakstu tabulā ar visiem vai daļējiem datiem (atkarībā no tā, vai kolonnām ir DEFAULT vērtības). Edited November 25, 2016 by jurchiks Quote
MarisJanis Posted November 25, 2016 Author Report Posted November 25, 2016 Ok, paldies par skaidrojumu. Izmēģināšu! Quote
MarisJanis Posted November 28, 2016 Author Report Posted November 28, 2016 Nē, šis nav mājasdarbs, atzīmes vai kredītpunktus par to nedos :-) Darba vietā nedaudz darbojos ar M$ access datubāzēm, bet vajag tā, lai šīs db nav piesaistītas vienam konkrētam lietotājam, bet vairākiem darbiniekiem. Šajā pašā formumā izlasīju par to, ka jēdzīgs variants ir šādu db uzturēt mysql un darbināt caur web lapu un php skriptiem. Sāku no nulles, caur Xampp un phpMyAdmin datubāzi un tabulas ir uztaisīt vienkārši, html formu piemēri datu pievienošanai mysql datubāzei izmantojot form action="action-table2.php" method="post" internetā ir daudz, bet neesmu atradis nevienu jēdzīgu piemēru kā html formā realizēt to, ko es jautāju pirmajā postā. Un neizdodas man Jurčika ieteikumu realizēt. Nesaprotu kur likt šo: $c = $pdo->query('SELECT DISTINCT... Pēc loģikas tas iet php failā form action...php, bet nesanāk. Quote
jurchiks Posted November 28, 2016 Report Posted November 28, 2016 Papriekš pamācies PHP PDO: https://phpdelusions.net/pdo Quote
Sasa Posted November 30, 2016 Report Posted November 30, 2016 Ja saprotu pareizi tad table1 "c" kolonai jāveido sava tabula, jo ja table 1 "c" kolonnas vērtības vēlies rādīt dropdownā, tad tas sanāk tāds kā klasifikators. Table 2 "e" insertots tiks tikai table 1 "c" kolonnas ID. Quote
MarisJanis Posted December 1, 2016 Author Report Posted December 1, 2016 Jā, paldies par ieteikumiem! Jautājums ir atrisināts citādākā veidā. Mans "maizes" darbs nav programmēšana, bet smadzeņu pakustināšanai tas ļoti noder un cik es ar programmēšanas lietām esmu darbojies, esmu sapratis, ka vienu jautājumu var risināt n`tajos veidos. Laiku tas, protams, prasa, bet rezultātu var dabūt arī pilnīgs čaiņiks šajā jomā. Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.