Autor Zpráva
davef6
Profil
mám toto

<script language="javascript">
function pridatvse(mail)
{
var kam_pridat = 'email2'
var pocet = 0;
while(pocet<<?php echo $pocet[0]; ?>;){
document.getElementById(kam_pridat).value += <?php echo $email; ?> + ", ";
pocet++;
}
}
</script>

mělo by to přidat po kliknutí všechny emaily z db,

v odkazu mám toto:
<a href="#" onClick="pridatvse(this);">Přidat všechny adresy</a>

javascriptu zase tolik nerozumím

ale nedělá to nic
Mike8748
Profil
takovymhle zpusobem michat JS a php kod nelze, takhle to nebude fungovat nikdy

je treba pouzit ajax, tedy udelat httprequest, kterej zavola php skript, ten vytahne emaily z db, vrati je do JS a pak pomoci JS se to vlozi to nejakyho inputu (nebo nekam jinam)
peta
Profil
davef6
"kde je chyba" - tak lze nazvat kazde tema. Jak by se ti to libilo?

Viz Mike8748, chyba je v logice.
1) PHP vygeneruje stranku, posle ji uzivateli a ten si ji zobrazi (HTML i JS kod).
2) Po kliknuti na tlacitko se stranka odesila zpet PHP, ktere vysledek zpracuje a opet posle uzivateli novou stranku k zobrazeni.

Jakou logiku jsi myslel, ze chces pouzit?

"mělo by to přidat po kliknutí všechny emaily z db"
Kliknes na tlacitko, www prohlizec se spoji se serverem a odesle mu tvuj pozadavek, server vrati novou stranku se vsim, co vyhodnotil PHP, je tam chces mit (treba s emaily z databaze).

Viz Mike8748, pokud jsi chtel neco usporit a natahovat pouze data bez obnoveni stranky, lze pouzimi JS ajax metod. Coz v podstate vunguje podobne, jako by jsi si obnovil skryty iframe a iframe ti pak pres parent.objGet(id).innerHTML zmenil obsah treba nejakeho divu. (coz je prave jedna z ajax metod, ajkymi lze docilit posilani pouze informaci)

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: