PDA

View Full Version : VARIABILI CON PHP..... HELP ME!!


Aquila2000
15-12-2002, 18:22
Ciao ragazzi, mi servirebbe per favore un aiuto. Sto provando a passare un parametro ad un programmino stupido in php e non ci riesco :cry:

Questi sono gli indizi:

Versione PHP = 4.2.3
S.O. : Windows2000
WebServer: IIS 5.0

Programma: p1.php
<html>
<head>
<title> Controlla il parametro </title>
</head>
<body>
<?
if ($par == 5):
print "<p align='center'>PARAMETRO UGUALE A 5 </p>";
elseif ($par == 6):
print "<p align='center'>PARAMETRO UGUALE A 6 </p>";
else:
print "<p align='center'>PARAMETRO NON VALIDO</p>";
endif;
?>
</body>
</html>

Chiamata : http://localhost/p1.php?par=5

Risultato:

Notice: Undefined variable: par in c:\inetpub\wwwroot\p1.php on line 7
Notice: Undefined variable: par in c:\inetpub\wwwroot\p1.php on line 9
PARAMETRO NON VALIDO

P.S. Php non sembra darmi problemi in quanto con accessi a mysql va tutto bene.....

AIUTOOOOOOOOOO!!!

Grazie a tutti.

cionci
16-12-2002, 11:39
In PHP 4.2 le variabili passate da con i metodi post e get non sono pių dichiarate automaticamente globali...

Per riavere il valore di quelle variaibli devi usare i vettori associativi $_POST e $_GET...stesso discorso per i cookies e per le variabili di sessione ($_COOKIE e $_SESSION)...

Nel tuo caso ti basterebbe fare questo all'inizio del codice :

$par = $_GET["par"];

Aquila2000
16-12-2002, 11:55
GRAZIE!!! Funziona!!!! Grazie mille. ;)

Senti non č che per caso sai come posso fare a riempire in maniera dinamica una combo in funzione di un'altra? Ad esempio se seleziono una squadra di calcio nella prima combo, vorrei che venissero caricati solamente i calciatori della squadra selezionata nella seconda combo. La connessione ed il riempimento delle combo dal db mi riesce (Mysql), ma non so come si fa a rendere la secoda combo dinamica..... devo usare javascript? se si, come?

GRAZIE!!!!!

cionci
16-12-2002, 12:02
Devi usare JavaScript e PHP insieme...
Ad esempio puoi usare PHP per scrivere il codice JavaScript che riempie la seconda combo nel caso che la prima venga modificata...
Aspetta qualche decina di minuti che ti faccio un esempio su come fare questa cosa in JavaScript...

Aquila2000
16-12-2002, 12:14
Aspetto.... grazie infinite!

cionci
16-12-2002, 12:49
E' tanto che non so JavaScript...
Comuqnue qualcosa č venuto fuori...anche se ho un problema sulla cancellazione dei nodi che non mi ricordavo pių come si faceva...

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
<title>Untitled</title>
</head>

<body>
<select name="cat" onchange="modifica(this.options[this.selectedIndex].value);">
<option value="0" SELECTED>Scegli...</option>
<option value="1">Uno...</option>
<option value="4">Quattro...</option>
<option value="7">Sette...</option>
<option value="10">Dieci...</option>
</select>

<select name="res" id="res" onchange="window.location.href = this.options[this.selectedIndex].value;">
<option value="0" SELECTED>Vuoto...</option>
</select>
<script language="JScript">
<!--
function modifica(option)
{
var oOption;

alert(""+res.length);

switch(option)
{
case "1":
for(i=0; i<res.length; ++i)
res.remove(i);
oOption = document.createElement("OPTION");
oOption.text="Scegli...";
oOption.value="#";
oOption.Selected = 1;
res.add(oOption);
oOption = document.createElement("OPTION");
oOption.text="Ciao";
oOption.value="http://tuoserver/prodotto.php?id=1";
res.add(oOption);
oOption = document.createElement("OPTION");
oOption.text="Come";
oOption.value="http://tuoserver/prodotto.php?id=2";
res.add(oOption);
oOption = document.createElement("OPTION");
oOption.text="Va?";
oOption.value="http://tuoserver/"+option+".html?id=3";
res.add(oOption);
break;
case "4":
for(i=0; i<res.length; ++i)
res.remove(i);
oOption = document.createElement("OPTION");
oOption.text="Scegli...";
oOption.value="#";
oOption.Selected = 1;
res.add(oOption);
oOption = document.createElement("OPTION");
oOption.text="Come";
oOption.value="http://tuoserver/prodotto.php?id=2";
res.add(oOption);
oOption = document.createElement("OPTION");
oOption.text="Va?";
oOption.value="http://tuoserver/"+option+".html?id=3";
res.add(oOption);
break;
default:
}

}
//-->
</script>

</body>
</html>

Con PHP oltre a scrivere i vari option all'interno della prima select scriverai anche il codice all'interno dei case...
Comunque mi dispiace, ma non sono risucito a togliere quel problema...

Aquila2000
16-12-2002, 12:52
Ora lo provo, GRAZIE MILLE! Per il problema che hai citato, ci perdo tempo io, sei stato gentilissimo, ancora grazie!!!!