ugrás a tartalomhoz

header location probléma

Creative · 2011. Okt. 13. (Cs), 00.25
Üdv

Egy olyan problémával találtam magam szembe, mellyel még ezelőtt soha :S Ezért is kérek most segítséget.
Adva vagyon egy index php fájl, melyben két form található, ezekből egyidejűleg ugye logikusan 1 kerül csak elküldésre, ezekben 3 érték.
  1. <form method="post" action="" enctype="multipart/form-data" name="login_form" id="login_form">  
  2.  <span>E-mail</span><input type="text" name="email" id="email" autocomplete="off" /><br />  
  3.  <span>Jelszó</span><input type="password" name="passcode" id="passcode" autocomplete="off" /><br/>  
  4.  <input class="submit" type="submit" id="send_login" value="Bejelentkezés" />  
  5.  <input class="ellenorzo" type="text" name="ellenorzo" id="ellenorzo" />  
  6. </form>  
Az adatok átkerülnek a scripts/user_auth.js fájlba, melyben a hibaellenőrzés és tisztogatás után egy jQuery POST-al mind a két fontos mezőnk átkerül egy szerver-oldali feldolgozó fájloz:
  1. function login(datastr){  
  2.  $.ajax({  
  3.   type: "POST",  
  4.   url: "/includes/user_login.php",  
  5.   data: datastr,  
  6.   cache: false,  
  7.   success: function(html){  
  8.   $("#response").fadeIn("slow");  
  9.   setTimeout('$("#response").fadeOut("slow")',2000);  
  10.  }  
  11. });  
Ezután a feldolgozó elvégezné a feladatát, mentene adattáblákba, s átirányítana. Mivel még nem végeztem eme függvényekkel, próbáltam csak az átirányítást bennhagyni. Azonban itt jön az, amit még sose láttam ezelőtt :S Hiába hibakiíratás, bármi... Kétfajta hibát kapok s az átirányítás se jön létre soha.
  1. if(isset($_POST)) {  
  2.  @header("Location: /index2.php");  
  3. }  
A két hiba az alábbi:
1. post kimegy, válasz: Reload the page to get source for: http://WEBHELY/includes/user_login.php
2. 500-as hibát kapok az index2.php -re, s ott is ezt a választ kapom: Reload the page to get source for: http://WEBHELY/index2.php

Másfél hete raktam be az xdebug -ot xamppomhoz, azóta már volt hogy include() és require() is el-elszálltak, de ezeket megoldottam már azóta. Visszalőttem alap php.ini-t is, ami nem törődik az xdebuggal, semmi se változott. Várom a hozzáértő szakkomentárokat :$ ^^
 
1

AJAX

Poetro · 2011. Okt. 13. (Cs), 02.45
Ha AJAX-szal csinálod a kérést, akkor miért irányítasz át? Az AJAX kérés válasza egy átírányítás lesz, amivel az AJAX feldolgozó szkripted valószínűleg nem fog tudni mit kezdeni. Vagy ne AJAX-szal küldd el a kérést, vagy a válaszban tudasd az AJAX kódoddal, hogy X helyre át kell irányítani, majd JavaScript-ből irányítsd át a felhasználót.
2

Az ajax kérés általában a 200

bb0072 · 2011. Okt. 13. (Cs), 09.28
Az ajax kérés általában a 200 OK fejlécre vár a szervertől, a success függvény akkor fut le ha ez volt a header, és megjött a tartalom. Semmi értelme az átirányításnak, ha ajaxxal küldöd a postot.
3

Megoldva

Creative · 2011. Okt. 20. (Cs), 12.59
Köszönöm a válaszokat :) Úgy tűnik, csak belekeveredtem rendesen :) Működik már rendesen, köszönöm hogy seggbe rúgtatok, nyissam már ki a szemem :D

C.