funzione per ruoli..

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
Salve, come faccio fare una funzione partendo da quella che vi posto ora..

che posso scrivere if(isRole(1,2,3)) o if(isRole(1,2))

esempio

PHP:
if(isRole(1,2))
{
}


Vi posto il codice:
PHP:
function isRole( $id )
	{
		$query = mysql_query("SELECT `level_access` FROM `login` WHERE `intLoginID` = " .  $id  . "");
		
		if ( mysql_num_rows ( $query ) == 1 )
		{
			$row = mysql_fetch_array ( $query );
			
			if ( $row['level_access'] == 1 )
			{
				return TRUE;
			}
			else {
				return FALSE;
			}
		}
		else {
			return FALSE;
		}
	}

aspetto notizie.. e buona giornata..

grazie mille.
 

Nefyt

Utente Attivo
17 Apr 2012
1.102
0
0
:D io la implementerei cosi
PHP:
function isRole( $id ) 
    {  
          $v = 0;
       //$ids diventa un array suddiviso dalle ,
         $ids = explode(',',$id);
       //cicliamo ogni elemento di $ids
          foreach($ids as $ix){
        $query = mysql_query("SELECT `level_access` FROM `login` WHERE `intLoginID` = " .  (int)$ix  . ""); 
         //conteggio risultati
        if ( mysql_num_rows ( $query ) == 1 ) {
             $row = mysql_fetch_array($query);
            if ( $row['level_access'] == 1 ) 
             //se tutti i controlli risultano corretti aumentiamo $v
                $v++;
          }
     } 
  //se $v è equivalente al numero degli elementi ciclati significa che tutti quanti hanno superato i controlli e quindi ritorna vero sennò falso
    return ($v == count($ids)) ? true : false;
}
if(isRole('1,2,3')) echo 'LOL';

Oppure una soluzione ancora migliore sarebbe utilizzare un array

PHP:
function isRole( $id ) 
    {  
          $v = 0;
       //cicliamo ogni elemento di $id
          foreach($id as $ix){
        $query = mysql_query("SELECT `level_access` FROM `login` WHERE `intLoginID` = " .  (int)$ix  . ""); 
         //conteggio risultati
        if ( mysql_num_rows ( $query ) == 1 ) {
             $row = mysql_fetch_array($query);
            if ( $row['level_access'] == 1 ) 
             //se tutti i controlli risultano corretti aumentiamo $v
                $v++;
          }
     } 
  //se $v è equivalente al numero degli elementi ciclati significa che tutti quanti hanno superato i controlli e quindi ritorna vero sennò falso
    return ($v == count($id)) ? true : false;
}
//array degli id che verrà ciclato
$lol = array();
$lol[] = 'id';
$lol[] = 'id2';
$lol[] = 'altroid';
if(isRole($lol)) echo 'LOL';
 

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
scusa moltissimo.. ma non è cosi.. mi son scordato di dire...

che la funzione che uso deve essere cosi il richiamo della funzione:

isadmin ( $_SESSION['id_utente'] )
{
qui contenuto dell'amministratore..
}

mi fai questo favore grande se mi metti che posso mettere anche la session id_utente e acchiappa il ruolo dal campo "level_access" del database..

vedi la funzione che ho postato prima..

ti ringrazio moltissimo e scusa per questa dimenticanza.
grazie buona serata.
 

Nefyt

Utente Attivo
17 Apr 2012
1.102
0
0
scusa moltissimo.. ma non è cosi.. mi son scordato di dire...

che la funzione che uso deve essere cosi il richiamo della funzione:

isadmin ( $_SESSION['id_utente'] )
{
qui contenuto dell'amministratore..
}

mi fai questo favore grande se mi metti che posso mettere anche la session id_utente e acchiappa il ruolo dal campo "level_access" del database..

vedi la funzione che ho postato prima..

ti ringrazio moltissimo e scusa per questa dimenticanza.
grazie buona serata.
Ma quindi devi gestire solo una variabile o piu elementi? :confused:
 

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
più elementi..

più meno dovrebbe essere cosi:

PHP:
isadmin ($_SESSION['id_utente'],1,2)
{
qui contenuto dell'amministratore..
}

però non la so fare io..

mi protesti aiutarmi?

grazie mille. e buona serata.
 

Nefyt

Utente Attivo
17 Apr 2012
1.102
0
0
Fai semplicemente cosi utilizzando il primo script che ti ho postato :)
PHP:
if(isadmin($_SESSION['id_utente'].',1,2'))
{ 
//qui contenuto dell'amministratore.. 
}
 

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
Fai semplicemente cosi utilizzando il primo script che ti ho postato :)
PHP:
if(isadmin($_SESSION['id_utente'].',1,2'))
{ 
//qui contenuto dell'amministratore.. 
}

ciao, ok.. però non funziona come deve funzionare..

io prima facevo cosi isadmin($_session["id_utente"])) etc..

perché qua devo incasinarmi mettendo il ! davanti e viceversa ?

c'è un modo da sistemare questa cosa?

che mi faccia come faceva la mia funziona che avevo preso da internet..

ora se inserisco cosi.
PHP:
if (isRole ($_SESSION['id_utente'],1,2))
						{
						?>
						<a href="index.php?m=foto">Foto</a>
						<?php } ?>
non vedo foto essendo moderatore..inve come admin .. vedo tutto.

come mai?
grazie mille. e buona notte.
 

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
percaso è questo pezzo di codice che non mi fa vedere quando sono moderatore:

PHP:
 if ( mysql_num_rows ( $query ) == 1 ) {
             $row = mysql_fetch_array($query);
            if ( $row['level_access'] == 1 ) 
             //se tutti i controlli risultano corretti aumentiamo $v
                $v++;
          }

perché if row controlla se l'level acess è 1 quindi e admin?
giusto?
come si può sistemare?

grazie mille.
 

Nefyt

Utente Attivo
17 Apr 2012
1.102
0
0
percaso è questo pezzo di codice che non mi fa vedere quando sono moderatore:

PHP:
 if ( mysql_num_rows ( $query ) == 1 ) {
             $row = mysql_fetch_array($query);
            if ( $row['level_access'] == 1 ) 
             //se tutti i controlli risultano corretti aumentiamo $v
                $v++;
          }

perché if row controlla se l'level acess è 1 quindi e admin?
giusto?
come si può sistemare?

grazie mille.
Beh se mod ha come valore 2 nel level_access ad esempio basta fare cosi
PHP:
 if ( mysql_num_rows ( $query ) == 1 ) {
             $row = mysql_fetch_array($query);
            if ( $row['level_access'] == 1 || $row['level_access'] == 2) 
             //se tutti i controlli risultano corretti aumentiamo $v
                $v++;
          }
 

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
no , non funziona nemmeno cosi...

come mai..

perché il moderatore vede anche quello dell'admin .. e non so come mai..

idee?

grazie mille.
 

Nefyt

Utente Attivo
17 Apr 2012
1.102
0
0
no , non funziona nemmeno cosi...

come mai..

perché il moderatore vede anche quello dell'admin .. e non so come mai..

idee?

grazie mille.
:incazz2: si puo sapere qual'è la richiesta finale? Prima chiedi che sia visibile anche ai moderatori oltre che agli admin
poi non vuoi piu averla visibile per i mod ma solo per gli admin? wtf? :confused:

Non è per essere scortese è solo per sapere cos'è che vuoi di preciso e di non contraddire le richieste per favore
 
Ultima modifica:

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
ho risolto.. alla vecchia maniera ed ho messo $_SESSION = = 1 || $_SESSION == 2 o solo $_SESSION == 1.

e cosi funziona come voglio io..

ti ringrazio molto e scusa se ti ho fatto incavolare..

buona giornata..

grazie mille.
 
Discussioni simili
Autore Titolo Forum Risposte Data
V [Visual Basic] Richiamare funzione su modulo per restituire list Visual Basic 0
C Creazione di una funzione per il filtraggio dei campi di un db Presentati al Forum 0
T [Javascript] funzione per attivare analytics... dov'è l'errore? Javascript 14
L [javascript]problema funzione per webapi Javascript 4
borgo italia una funzione per verificare l'invio di files Snippet PHP 0
A Funzione javascript per effettuare la slide del carosello in avanti Javascript 0
trattorino [PHP] funzione per visualizzare solo carattere PHP 2
N funzione autoplay video per browser mobili come ios e android Javascript 0
neo996sps Logica per funzione preventivi: sono sulla strada giusta? PHP 4
S Utilizzare la funzione postmessage per fare un redirect Javascript 0
L Funzione per API HTML5 Javascript 0
neo996sps [PHP e funzioni con PDO] Funzione per generare corpo tabella PHP 1
M [Datetimepicker]Richiamare funzione per più id uguali jQuery 4
otto9due Funzione per ridimensionare div in base alla risoluzione schermo.. Javascript 5
G Funzione che resta in ascolto per una chiamata esterna Javascript 1
T [MYSQL] Richieste in Java per funzione Ajax MySQL 0
B Funzione per ottenere una determinata stringa PHP 4
ivarello Due Pulsanti con per lanciare funzione Javascript 0
L Funzione per verificare distanza di tempo non funziona: perchè? PHP 4
Z MailChimp: funzione per invio coupon personalizzati ed unici Email Marketing 2
T Funzione per redirect versione mobile: escludere i tablet Javascript 1
N [risolto] Funzione per calcolo età PHP 4
L funzione per nascondere username PHP 5
A funzione per popolare un drop down list Javascript 4
A Funzione unica per prendere e recuperare valori Javascript 0
P Funzione truncate per testo Javascript 3
E ordinamento array multidimensionale per un valore ottenuto tramite una funzione PHP 1
A Funzione per modificare foto PHP 2
P funzione per safari PHP 0
L Funzione per le News "leggi tutto" PHP 32
Sevenjeak Aiuto miglioramento funzione per inserimento BBCode in textarea Javascript 1
D Problema con funzione preg_match() per controllo email PHP 2
L Funzione per inserire solo testo PHP 13
H Funzione onmouseover per mostrare un box con un link da cliccare? Javascript 3
G Funzione per spedire email a destinatari diversi PHP 0
Monital Modificare una funzione per creazione tabella html PHP 15
G funzione javascript per passaggio valori Javascript 1
emanuelevt funzione per entità html e classe PHP 1
asevenx problema con funzione per far apparire e scomparire un form di commenti PHP 1
M jQuery: funzione substr o substring per tagliare un testo? jQuery 1
M JavaScript: lanciare funzione ASP per salvare dati in database Javascript 0
J Funzione RICERCA per rubrica telefonica PHP 1
P SCript per la funzione condividi Ajax 1
T funzione cerca per il mio sito PHP 4
G Errore funzione per form PHP 2
O problemi con funzione per stampare tendina per data PHP 6
V [JQuery] Aiuto per funzione Ajax jQuery 0
P Funzione "http_build_query" per PHP4 PHP 0
G [javascript]Chiamare funzione javascript per menù Javascript 2
SolidSnake4 funzione mkdir per creare una directory PHP 1

Discussioni simili