- Home
- Categorie
- Coding e Sistemistica
- PHP
- Errore nell' assegnazione della variabile $this->id su una funzione
-
Errore nell' assegnazione della variabile $this->id su una funzione
Buongiorno a tutti ,
ho bisogno di un vostro piccolo aiuto in quanto devo gestire un $id = $_GET['id']; (che legge dei valori dall url) ed ignettarlo nelle funzioni ShowRegioni e ShowProvince .
Il problema è che in ShowRegioni la variabile $this->id , funziona correttamente mentre in ShowProvince non risulta valorizzata .. Mi sapete dare una spiegazione? mi sembra anomalo questo malfunzionamento..Vi ringrazio in anticipo
[PHP]<?php
class SelectList_mod
{
protected $id;public function ID(){ $this->id = $_GET['id']; return TRUE; } protected $conn; public function __construct() { $this->DbConnect(); $this->ID(); } function DbConnect() { //const $connessione=""; include ('/../connect.php'); //include_once('connect.php'); $this->conn = mysqli_connect($host,$user,$password,$db) OR die("Impossibile connettersi al database"); mysqli_select_db($this->conn,$db) OR die("Impossibile selezionare il database $db"); return TRUE; } public function ShowRegioni() { $confronto_id_associati = mysqli_query($this->conn, "SELECT id , regione FROM associati WHERE id LIKE '" . mysqli_escape_string($this->conn, $this->id) ."'") or die(mysqli_error($this->conn)); while($array_confronto_associati = mysqli_fetch_array($confronto_id_associati)) { $array_confronto_associati['id']; $array_confronto_associati['regione']; $confronto_id_regioni = mysqli_query($this->conn, "SELECT id_reg , nome_regione FROM regioni WHERE id_reg LIKE '" . mysqli_escape_string($this->conn, ($array_confronto_associati['regione'])). "'") or die(mysqli_error($this->conn)); while($array_confronto_regioni = mysqli_fetch_array($confronto_id_regioni)) { $array_confronto_regioni['id_reg']; $array_confronto_regioni['nome_regione']; $regioni=""; $regioni .= '<option value="' . $array_confronto_regioni['id_reg'] . '">' . 'VALORE PRECEDENTE : ' . utf8_encode($array_confronto_regioni['nome_regione']) . '</option>'; $res = mysqli_query($this->conn,"SELECT * FROM regioni"); while($row = mysqli_fetch_array($res)) { $regioni .= '<option value="' . $row['id_reg'] . '">' . utf8_encode($row['nome_regione']) . '</option>'; } } } return $regioni; } public function ShowProvince() { $confronto_id_associati = mysqli_query($this->conn, "SELECT id , provincia FROM associati WHERE id LIKE '" . mysqli_escape_string($this->conn, $this->id) ."'") or die(mysqli_error($this->conn)); while($array_confronto_associati = mysqli_fetch_array($confronto_id_associati)) { $array_confronto_associati['id']; $array_confronto_associati['provincia']; $confronto_id_provincia = mysqli_query($this->conn, "SELECT id_pro , nome_provincia FROM province WHERE id_pro LIKE '" . mysqli_escape_string($this->conn, ($array_confronto_associati['provincia'])). "'") or die(mysqli_error($this->conn)); while($array_confronto_provincia = mysqli_fetch_array($confronto_id_provincia)) { $array_confronto_provincia['id_pro']; $array_confronto_provincia['nome_provincia']; $province=""; $province .= '<option value="' . $row['id_pro'] . '">' . 'VALORE PRECEDENTE : ' . utf8_encode($array_confronto_provincia['nome_provincia']) . '</option>'; $res = mysqli_query($this->conn,"SELECT * FROM province WHERE id_reg=$_POST[id_reg]"); //$province = '<option value="0">Scegli Provincia...</option>'; while($row = mysqli_fetch_array($res)) { $province .= '<option value="' . $row['id_pro'] . '">' . utf8_encode($row['nome_provincia']) . '</option>'; } } } return $province; }
}
?>[/PHP]
-
A prima vista sembra tutto ok, non è che il problema è fuori dalla classe?