Transmiterea de variabile printr-un formular auto-apelat

Secţiune dedicată începatorilor.

Moderatori: Moderatori, Start Moderator

errotizm
New Member
Mesaje: 1
Membru din: Vin Dec 27, 2013 9:13 pm

Transmiterea de variabile printr-un formular auto-apelat

Mesajde errotizm » Vin Dec 27, 2013 9:36 pm

Buna tuturor!

Am o pagina care , principial vorbind , arata astfel:


<head>
<script>
function change(alfa) {
document.getElementById("vtp").innerHTML="<form id='send' method='post' action='page.php'><input type='text' name='alfa' value='"+alfa+"'></form>";
document.getElementById("send").submit(); }
</script>

</head>

<body>

<span id="vtp" style="display:none"></span>


<?php
$alfa=$_POST["alfa"]; // aceasta variabila e folosita in afisarea paginii
?>


<img src="image1.png" onclick="change('text1')">
<img src="image2.png" onclick="change('text2')">

</body>



Pe scurt, scopul e simplu: reincarcarea paginii cu noua valoare a variabilei alfa, prin auto-executarea unui formular <form> ascuns. Pagina mea e mult mai complexa, dar eu am prezentat cum stau lucrurile in principiu.

Comportarea acestei pagini este insa foarte ciudata si nu o inteleg: la primele 3-4 apeluri (clickuri pe image1 si image2) totul decurge ok (variabila se transmite, iar pagina se afiseaza corespunzator) , dar apoi serverul hosterului se blocheaza si imi baneaza IP-ul. Abia dupa ce imi fac refresh la IP mai pot reintra pe site.

Am uploadat pagina pe mai multe hostere: toate au acelasi comportament (primele 30 de secunde totul decurge ok, apoi conexiunea se intrerupe).

Poate sa-mi explice cineva ce anume se intampla ? Incalc vreo masura de securitate a hosterelor, sau pur si simplu e ceva in neregula cu modul cum am conceput eu pagina ?

E posibil ca functia submit() sa "deranjeze" serverul ? Altceva nu stiu ce ar putea fi ... S-a mai confruntat cineva cu asa ceva ? Ma poate lamuri cineva care-i cauza acestui comportament ciudat ?

Mersi!


COMPLETARE:

Am observat adineauri ca acest comportament ciudat (aceasta blocare) exista in Chrome, dar nu si in Explorer. In Explorer pagina functioneaza ok (fara nicio intrerupere). Acum, cu aceasta informatie suplimentara, isi poate da cineva cu parerea ? Exista vreo solutie sa fac pagina sa functioneze si in Chrome ?

***

Se pare ca totul porneste de la memoria RAM: pagina suprasolicita RAM-ul hosterului, iar acesta intrerupe automat conexiunea (ca masura de securitate). Problema e ca nu inteleg cum poate un biet formular sa suprasolicite RAM-ul ... Offf, viata de cosmar!



badtiger
Senior Member
Mesaje: 598
Membru din: Vin Noi 03, 2006 7:54 pm
Contact:

Re: Transmiterea de variabile printr-un formular auto-apelat

Mesajde badtiger » Lun Dec 30, 2013 3:46 pm

Nu prea am inteles nimic din ce ai spus, uite cateva sfaturi ca sa te putem ajuta:

1. Fereste-te sa colorezi scrisul (nu strica ochii programatorilor) -> poti folosi bbcode-ul specific la ceea ce vrei sa adaugi
2. Foloseste cuvinte care exista "hoster" nu exista nici in romana si nici in engleza (cel putin nu ca substantiv comun, asa cum l-ai folosit tu)
3. Ia-o calm si explica cu . si , pentru ca problemele expuse de tine sa fie mai usor intelese de cei care vor sa te ajute

Cateva sugestii bazate pe ce am inteles de la tine:

1. sa te feresti sa folosesti innerHTML pentru a afisa elemente HTML (trebuie create din DOM)
2. Chrome a devenit idiot si uneori ia decizii pripite in ceea ce priveste securitate si de aceea trebuie sa te feresti cat mai mult de hack-uri

Nota: hack-uri in acest context inseamna ocolirea unor deficiente sau adaugarea unor functionalitati pt care browser-ul nu a fost pregatit


Înapoi la “PHP Incepători”

Cine este conectat

Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 24 vizitatori