Salve,
spiego brevemente.
Ho creato questa classe
Codice PHP:
class Unit {
    
    
// PROPRIETA
    
public $tribu;
        ......

    
// COSTRUTTORE
    
public function __construct($tribu....) {
        
$this->tribu $tribu;
        .......
    }

    
// METODI
    
........
}

// UNITA
$nomeunita = new Unit(1,....);
$nomeunita2 = new Unit(7,....);
.... 
Diciamo che la uso come libreria, cioè ho diverse pagine e script php che usano i dati contenuti in questo file php, e ne sfruttano i metodi della classe.
Gli oggetti ($nomeunita) vengono creati tutti in quel file, in modo da avere tutti i dati che mi servono sempre disponibili, ed evito di andare a creare un nuovo oggetto con i propri attributi in ogni pagina in cui mi serve.
Come detto prima, questa "libreria" è inclusa in tutte le pagine che la sfruttano.
Ho un'altra pagina con una <select> che in base alla scelta che faccio, deve andare a fare dei calcoli in base all'unita selezionata. ad esempio
codice:
<select id="selezione" onchange="calcola()">
  <option value="$nomeunita1">Unita1</option>
  <option value="$nomeunita2">Unita2</option>
  ........
la funzione calcola() è questa:
codice:
function calcola() {
        ...........
       var selezione = il valore assunto dalla select;
       myRequest = CreateXmlHttpReq(myHandler);
       myRequest.open("GET","calcola.php?selezione="+escape(selezione));
       myRequest.send(null);
       .....
}
con relativo output....
codice:
function myHandler() {
    if (myRequest.readyState == 4 && myRequest.status == 200) {
        var risultato = document.getElementById("totale");
        risultato.innerHTML=myRequest.responseText;
    }
}
la pagina calcola.php dovrebbe essere questa
Codice PHP:
<?php
include("libreria.php");

$selezione $_GET['selezione'];

echo 
$selezione->metodo(); <------$selezione non è un oggetto!!!

?>
Ecco, così mi ricavo il valore della select (quindi la option selezionata), ad esempio "nomeunita1". In base alla option selezionata, deve lavorare con uno degli oggetti creati nella libreria. Quindi se ad esempio seleziono nella select "nomeunita1", deve lavorare con l'oggetto "$nomeunita1".
In pratica in calcola.php l'echo deve essere del tipo:
Codice PHP:
echo $nomeunita1->metodo(); 
La variabile $selezione diciamo che contiene esattamente il nome dell'oggetto che mi serve, in questo caso $selezione contiene la stringa "$nomeunita1".
Come faccio a far capire allo script con quale oggetto lavorare?
Pensavo di fare un if così:
Codice PHP:
if ( $selezione == "$nomeunita1")
  
$nomeunita1->metodo(); 
E questa è già una soluzione al mio problema. Però in quella "libreria" ho circa 40 oggetti, quindi dovrei fare 40 if nel file calcola.php!! E mi sembra una cosa assurda visto che nella variabile $selezione ho già il nome dell'oggetto con cui lavorare!

Spero di essere stato chiaro, per altre info chiedete pure, grazie.