dinamikus ürlap adatainak bevitele sql-be
Sziasztok!
A kérdésem az lenne, hogy van ez a javascript kódom:
<script>
function addField(fieldset){
var fields = fieldset;
var x=1;
for (i=1; i<=1; i++){
var newField = document.createElement('input');
newField.setAttribute('type', 'text');
newField.setAttribute('name', 'kat'+x);
newField.setAttribute('id', 'my_input_'+x);
fields.appendChild(newField);
x++;
}
}
</script>
<form id="kategoriak" action="feldologoz.php" method="POST">
<fieldset id="myfieldset">
<input type="text" name="kat" id="my_input"><br>
</fieldset>
<a href="javascript:addField(document.getElementById('myfieldset'))"><small>uj mezo</small></a>
<input type="submit" name="gomb" id="gombom" value="elkuld">
</form>
ehhez kellene egy olyan segiteség elsősorban, hogy hogyan tudom azt megoldani, hogy az ujonnan hozzáadott input mezők egymás alatt legyenek?Javascripthez nem nagyon értek.
A másik problémám, hogy hogyan tudom php-vel megnézni hogy az adott form-ban hány input mező van és ezeket hogyan tudom átadni a php-nek, hogy utánna beirhassam sql-be.
Előre nem tudom mennyi input mezőt fognak hozzáadni, és erre kellene még egy olyan dolog, hogy amennyiben a felhasználó több mezőt ad hozzá, de neki már nem kell több akkor az üres mezőket ne vegye figyelembe.
Már olvasgattam, hogy esetleg for ciklussal át lehetne adni az adatokat de sajnos a mikéntje még elég homályos nekem.
előre is köszönöm a segitséget.
Szabolcs
■ A kérdésem az lenne, hogy van ez a javascript kódom:
<script>
function addField(fieldset){
var fields = fieldset;
var x=1;
for (i=1; i<=1; i++){
var newField = document.createElement('input');
newField.setAttribute('type', 'text');
newField.setAttribute('name', 'kat'+x);
newField.setAttribute('id', 'my_input_'+x);
fields.appendChild(newField);
x++;
}
}
</script>
<form id="kategoriak" action="feldologoz.php" method="POST">
<fieldset id="myfieldset">
<input type="text" name="kat" id="my_input"><br>
</fieldset>
<a href="javascript:addField(document.getElementById('myfieldset'))"><small>uj mezo</small></a>
<input type="submit" name="gomb" id="gombom" value="elkuld">
</form>
ehhez kellene egy olyan segiteség elsősorban, hogy hogyan tudom azt megoldani, hogy az ujonnan hozzáadott input mezők egymás alatt legyenek?Javascripthez nem nagyon értek.
A másik problémám, hogy hogyan tudom php-vel megnézni hogy az adott form-ban hány input mező van és ezeket hogyan tudom átadni a php-nek, hogy utánna beirhassam sql-be.
Előre nem tudom mennyi input mezőt fognak hozzáadni, és erre kellene még egy olyan dolog, hogy amennyiben a felhasználó több mezőt ad hozzá, de neki már nem kell több akkor az üres mezőket ne vegye figyelembe.
Már olvasgattam, hogy esetleg for ciklussal át lehetne adni az adatokat de sajnos a mikéntje még elég homályos nekem.
előre is köszönöm a segitséget.
Szabolcs
A második probléma
egymás alatt?
Mit értesz azon, hogy egymás alatt? Merthogy az elrendezéshez semmi köze a JavaScript-nek, az pusztán CSS kérdése.
A
$_POST
tömbbön kell végigmenni PHP-val mondjuk egyforeach
ciklusban.egymás alatt
Egymás alatt azt értem, hogy nem egymás alá helyezi el a hozzáadott input mezőket hanem egymás mellé.És ezt akarom megoldani hogy egymás alatt legyenek.
foreach ($_POST[""] AS $akarmi){
print "$akarmi";
}
valami hasonló dologra gondoltál vagy még kell bele valami, hogy jo is legyen?
Jelenleg a javascriptes dolog ki van véve, mert nem tudom hogyan tudom meg, hogy hány darab input metőm van benne.
Ezért most ugy van, hogy az urlap.php-n van x db input mező.
Ezeket a feldolgoz.php-ban bekérem a inputn=$_POST['namen']-el.
Ezeket az értékeket aztán beviszem egy tömmbbe és beküldöm sql-be karakterláncként implode();-al összefűzve.
És itt van a problémám, hogy azokat is hozzáfüzi nekem az array utasitás amiknek nincs értékük.
Na ez a rész érdekelne engem mert nem tudok rájönni, hog tudom elkerülni azt, hogy az érték nélküli mezőket beirja nekem.
Próbáltam if (!empty($_POST[]...)-al de nem hagjya lefutni a programrészt.Az előbbi próbálkozásom ha jol tudom ellenőrzi hogy ki van e töltve a $_POST-olt mező.Ha nem akkor javitsatok ki légyszives.
köszi szabolcs
Egymás alatt azt értem, hogy
Ehhez CSS-ben a
display
illetve aclear
tulajdonságot kell állítani. Természetesen léteznek más megközelítések CSS-ben ugyanerre de a fenti kettő közül választani talán a legegyszerűbb.Valamit el kellene venni belőle, és valamit hozzá kellene tenni.
Én nem azt írtam, hogy a
$_POST[""]
tömbbön kell végigmenni, hanem a$_POST
tömbbön. Ehhez a legegyszerűbb módszer a:$_POST
tömbbön úgyis végigiterálsz, akkor már ott is elintézheted a szűrést - csak azokat az értékeket tartod meg, ahol az$ertek
nem üres.ezer hála
Nagyon szépen köszönöm örök hála a segitségért.