» »

Login popup box login error.

Login popup box login error.

EmaZek ::

Lp,
Imam problem z login popup boxom. Situacija je taksna da imam na spletni strani href prijavi in ko kliknes se odpre popup login. Deluje mi vse pravilno nastane pa problem ko naredi error ce npr. Ne izpolnis forma pravilno. Stran pravilno naredi refresha ampak ne vem kako bi naredil da bi avtomaticno mi spet odprlo login popup box ker tam se izpisejo napake npr. Nisi vpisal uporabniskega imena... ?? Hvala za pomoc!!

EmaZek ::

header("Location:index.php/#login-box");

Zaenkrat imam z tem največ uspeha mi pa sicer ne zlovda css-ja samo podatke pa ne vem kako uštimat to?? Kakšna ideja??

usoban ::

Tkole cist po kmecko, sfrizirat bos pa ze sam znav :)
Uglavnem moras samo na zacetku, ko nalovdas stran, pogledat ce moras pokazati popup. To informacijo imas, kot vidim, v hashu url-ja.

function init() {
  if(location.hash === '#login-box') {
    // pokazi popup
  }
}

<body onload="init()" />

EmaZek ::

Usoban hvala za pomoč samo glede jave scripta pa jquerija sm mrzu. Znam malo php-ja css html tko v easy. Tako da sam do kraja ne bom znal napisati scripto :/. Trenutno testiram če naredim na drugi strani popup.

Drgače če sem te pravilno zastopil. Kako pa dobit v url da more login-box zagnat ?? A to bi mogu z php-jem poslat v heder-ju al kako drugače ?
Če lahko še mal razložiš bi bil ful vesel.Tnx

usoban ::

ti rabis informacijo o tem, ali prikazes popup ali ne. Ugotovit je treba samo, kako jo pridobit.
Da se na veliko nacinov, enega si prikazal ze sam, tako da npr. v primeru napake redirectas na index.php#login-box, nato pa bo tistale zgornja koda preverila, ali se #login-box nahaja hash delu URL-ja ali ne (hash del je tisti del za znakom # oz. skupaj z njim) in ga v tem primeru prikazala.

Manjka ubistvu samo tisti del kode, ki prikaze popup. Tega pa ze mas, ane?

V kolikor delas z jQuery, potem vkljucis sledeco kodo, ki je prakticno ekvivalentna zgornji, s to razliko da ti ni potrebno pripenjat "onload" callbacka na body element v tvojem HTML-ju.

jQuery(document).load(function(){
  if(location.hash === '#login-box') {
    // prikazi popup
  }
});

Zgodovina sprememb…

  • spremenil: usoban ()

EmaZek ::

usoban je izjavil:

ti rabis informacijo o tem, ali prikazes popup ali ne. Ugotovit je treba samo, kako jo pridobit.
Da se na veliko nacinov, enega si prikazal ze sam, tako da npr. v primeru napake redirectas na index.php#login-box, nato pa bo tistale zgornja koda preverila, ali se #login-box nahaja hash delu URL-ja ali ne (hash del je tisti del za znakom # oz. skupaj z njim) in ga v tem primeru prikazala.

Manjka ubistvu samo tisti del kode, ki prikaze popup. Tega pa ze mas, ane?

V kolikor delas z jQuery, potem vkljucis sledeco kodo, ki je prakticno ekvivalentna zgornji, s to razliko da ti ni potrebno pripenjat "onload" callbacka na body element v tvojem HTML-ju.


jQuery(document).load(function(){
if(location.hash === '#login-box') {
// prikazi popup
}
});

To se pravi ce mojo scripto dam v //prikazi popup bi moralo delovati ? Ceprav me nekaj martra se zmeraj moja scripta potrebuje klik da zalavfa sem priložil vse kar imam če bo kej pomagalo lahko tud css
															<a href="#login-box" class="login-window glow">
															
															<h2>Prijava</h2>
															
															
															</a>
															<div id="login-box" class="login-popup">
																	<a href="#" class="close"><img style="float:right;" src="images/close_pop1.png" class="btn_close" title="Close Window" alt="Close" /></a>
																	  <form method="post" class="signin" action="./login-update/main.php">
																			<fieldset class="textbox">
																			<label class="username">
																			<span>Uporabnisko ime / e-mail</span>
																			<input id="username" name="username" value="" type="text" autocomplete="on" placeholder="Uporabnik">
																			</label>
																			<label class="password">
																			<span>Geslo</span>
																			<input id="password" name="password" value="" type="password" placeholder="Geslo">
																			</label>
																			<button class="submit button" type="submit">Prijavi</button>
																			<p>
																			<a class="forgot" href="#">Pozabil geslo?</a>
																			</p>        
																			</fieldset>
																	  </form>
															</div>
																		
										
 

To je pa scripta

								$(document).ready(function() {
									$('a.login-window').click(function() {
										
												//Getting the variable's value from a link 
										var loginBox = $(this).attr('href');

										//Fade in the Popup
										$(loginBox).fadeIn(300);
										
										//Set the center alignment padding + border see css style
										var popMargTop = ($(loginBox).height() + 24) / 2; 
										var popMargLeft = ($(loginBox).width() + 24) / 2; 
										
										$(loginBox).css({ 
											'margin-top' : -popMargTop,
											'margin-left' : -popMargLeft
										});
										
										// Add the mask to body
										$('body').append('<div id="mask"></div>');
										$('#mask').fadeIn(300);
										
										return false;
									});
									
									// When clicking on the button close or the mask layer the popup closed
									$('a.close, #mask').live('click', function() { 
									  $('#mask , .login-popup').fadeOut(300 , function() {
										$('#mask').remove();  
									}); 
									return false;
									});
								});

Bom probal zdaj tvojo kodo z mojo če bo kaj ratal. Drgač pa full hvala za vso pomoč.

EmaZek ::

Trenutno sem probal odstraniti $('a.login-window').click(function() funkcijo z navadno funkcijo ki se samo zažene in za var loginbox ='#login-box' ampak neuspešno .. :/

Zgodovina sprememb…

  • spremenil: EmaZek ()

EmaZek ::

<script>
																
								$(document).ready(function() {
									if(window.location.hash === '#login-box') {
										
										
												//Getting the variable's value from a link 
										var loginBox = $('#login-box');
										document.write(loginBox);
										//Fade in the Popup
										$(loginBox).fadeIn(300);
										
										//Set the center alignment padding + border see css style
										var popMargTop = ($(loginBox).height() + 24) / 2; 
										var popMargLeft = ($(loginBox).width() + 24) / 2; 
										
										$(loginBox).css({ 
											'margin-top' : -popMargTop,
											'margin-left' : -popMargLeft
										});
										
										// Add the mask to body
										$('body').append('<div id="mask"></div>');
										$('#mask').fadeIn(300);
										
										return false;
									});
									
									// When clicking on the button close or the mask layer the popup closed
									$('a.close, #mask').live('click', function() { 
									  $('#mask , .login-popup').fadeOut(300 , function() {
										$('#mask').remove();  
									}); 
									return false;
									});
								});
								</script>


Tole po vsej logiki bi moralo delovat pa neče .. .. kakšna ideja ??

EmaZek ::

Evo uspelo malo sintaksa zaj. bomba hvala ti :)))

usoban ::

sedaj imas verjetno 2x isto funkcijo zapisano, enkrat za click in enkrat na $(document).load, kajne?

Resi se tega podvajanja tako, da vse spravis v eno funkcijo, npr:
function showPopup() {  // showPopup je ime funkcije
    if(window.location.hash === '#login-box') {
        //Getting the variable's value from a link
        var loginBox = $('#login-box');
        
        //Fade in the Popup
        $(loginBox).fadeIn(300);
         
        //Set the center alignment padding + border see css style
        var popMargTop = ($(loginBox).height() + 24) / 2;
        var popMargLeft = ($(loginBox).width() + 24) / 2;
         
        $(loginBox).css({
            'margin-top' : -popMargTop,
            'margin-left' : -popMargLeft
        });
         
        // Add the mask to body
        $('body').append('<div id="mask"></div>');
        $('#mask').fadeIn(300);


        // When clicking on the button close or the mask layer the popup closed
        $('a.close, #mask').live('click', function() {
            $('#mask , .login-popup').fadeOut(300 , function() {
                $('#mask').remove(); 
            });
            return false;
        });
    }
}

$('a.login-window').click(showPopup); // namesto funkcije mu podtaknes njeno ime
$(document).load(showPopup);          // enako kot zgoraj, vendar ob drugem dogodku

Zgodovina sprememb…

  • spremenil: usoban ()


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Jquery

Oddelek: Izdelava spletišč
151625 (1349) mk818764
»

jquery in div-i (strani: 1 2 )

Oddelek: Izdelava spletišč
8710483 (9221) lisjak
»

[CSS]Pozicioniranje footer diva

Oddelek: Izdelava spletišč
62272 (2219) amaze646
»

JavaScript + fade

Oddelek: Izdelava spletišč
161812 (1447) arjan_t
»

JavaScript popup

Oddelek: Izdelava spletišč
92090 (1911) *pety*

Več podobnih tem