Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 29
  1. #1

    $.ajax deve puntare ad un metodo statico in php

    Salve mi ricollego in parte al mio precente post anche se quel problema è risolto per esporre un caso particolare. Senza stare a scendere troppo nei dettagli ho un applicativo di rimodernizzare un pò, basato oltre che sul sistema di autenticazione classico (user e pass) anche su un codice aggiuntivo per raggiungere determinate aree, come la gestione dei nostri archivi interni, associato al ip del computer. In pratica qualsiasi utente può loggarsi ovunque ma solo chi in possesso di un determinato codice può accedere a determinate aree se l'ip del suo computer è abilitato a farlo e solo allora vengono prese le decisioni sui permessi e quindi su cosa può visualizzare, anche a livello di opzioni, e cosa può fare.

    Detto questo il codice funziona e fa quello che deve solamente ho un caso particolare, quello del accesso con i permessi massimi, in cui avrei bisogno di puntare dirattamente ad un metodo statico della classe User scritta in php5.

    In pratica una cosa di queste genere:

    Codice PHP:
    User::superUser(); 
    solo che non sono riusciuto a trovare il modo di farlo da jquery in quanto la funzione che ho scritto:

    codice:
    $(document).ready(function() 
    {
    	$(".open_popup").colorbox({width:"600px", 
    							   inline:true, 
    							   open:true, 
    							   showClose:false,
    							   overlayClose:false,
    							   arrowKey:false,
    							   escKey:false, 
    							   href:"#type_password",
    							   });
    	
    	$("#cboxClose").css("display","none");
    			
    	$('#form')[0].reset();
    
    	$("form#form").submit(function() 
    	{
    		$.post("verifica.php", { password: $('#password').val(), 
    								 rand: Math.random()
    							   },
    			function(risposta)
    			{
    				if (risposta == 1)
    				{
    					$("#cboxClose").click();
    				} else {
    					$("#errorMessage").fadeTo(200, 1, function()
    					{
    						$(this).removeClass().addClass('errore').text('Wrong Password').fadeTo(900, 1);
    					});
    				}
    			});
    			return false;
    	});
    });
    come si vede nel parametro $.post punta al file verifica.php mentre avrei bisogno puntasse direttamente al metodo in questo modo

    codice:
    $.post("User::superUser()",  /* resto della stringa */
    Sperando di essermi spiegato bene domando: E' possibile fare una cosa simile ?

    Grazie per le risposte
    Marco

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Se intendi puntare ad una funzione superUser() presente nella pagina verifica.php non puoi, prima carichi la pagina .load poi lanci la funzione.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Originariamente inviato da cavicchiandrea
    Se intendi puntare ad una funzione superUser() presente nella pagina verifica.php non puoi, prima carichi la pagina .load poi lanci la funzione.
    Aspetta forse mi sono spiegato male. Ho bisogno di puntare a un metodo che non è nella pagina verfica, era solo un esempio, ma in un altro file dato che ho riscritto le implementazioni per PDO e PDOStatement usando il Singleton.

    La tua soluzione, seppur valida, lo baipassa e non voglio che accada altrimenti non lo avrei implementato.

    Qualche altra ideaa ?

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Non ci ho capito nulla, sei troppo avanti per me non saprei fai conto che non sono intervenuto.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Originariamente inviato da cavicchiandrea
    Non ci ho capito nulla, sei troppo avanti per me non saprei fai conto che non sono intervenuto.
    scusa

  6. #6
    beh...nella tua verifica.php fai la discriminazione no? Non credo che a priori (prima di inviare il form) tu sappia se è un superuser, no?
    Quindi nel tuo verifica.php avrai qualcosa che capisce se è un superuser e nel caso esegue User::superUser();


  7. #7
    Originariamente inviato da Dascos
    beh...nella tua verifica.php fai la discriminazione no? Non credo che a priori (prima di inviare il form) tu sappia se è un superuser, no?
    Quindi nel tuo verifica.php avrai qualcosa che capisce se è un superuser e nel caso esegue User::superUser();

    Ciao,

    il punto è proprio questo. Se la form di cui stiamo parlando appare io so a priori che un admin di terzo livello, precedentemente identificato in modo inconfutabile, sta cercando di accedere al pannello di controllo generale e non mi rimane che verificare se alcune cifre/lettere estratte a caso dal suo codice di sicurezza e che deve immettere nell'ordine che di volta in volta viene proposto in modo del tutto random, corrispondono e soprattutto se l'ip del suo computer è abilitato ad accedere a tali funzioni quindi quando viene premuto Invia io devo lanciare per forza quella funzione.

    Spero di essermi spiegato non da cani
    Marco

  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    Non puoi richiamare direttamente un metodo php da ajax, quello che devi fare è richiamare un url(pagina php) e passargli un "action" che indichi il metodo da richiamare.

  9. #9
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Originariamente inviato da Palma Marco
    ... corrispondono e soprattutto se l'ip del suo computer è abilitato ad accedere a tali funzioni ...
    Se un applicativo/progetto pubblico (sito internet) non mi risulta possibile recuperare/intercettare ip del computer
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  10. #10
    Originariamente inviato da cavicchiandrea
    Se un applicativo/progetto pubblico (sito internet) non mi risulta possibile recuperare/intercettare ip del computer
    Beh, l'ip pubblico sì. Forse intendeva questo

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.