login  Naam:   Wachtwoord: 
Registreer je!
 Forum

$conn scope

Offline roy - 11/02/2008 17:31 (laatste wijziging 11/02/2008 19:37)
Avatar van royPHP gevorderde Beste,

Ik heb een variabele $conn, waarin de connectie naar mijn database staat.

Deze wil ik gebruiken in een switch:
  1. <?PHP
  2.  
  3. print_r($conn);
  4. switch($_GET['type'])
  5. {
  6. case "getpage":
  7. echo $sQuery = "SELECT
  8. *
  9. FROM
  10. page
  11. WHERE
  12. deleted = 'false'
  13. AND
  14. isagroup = 'false'
  15. AND
  16. active = 'true'
  17. ";
  18. print_r($conn);
  19. $rs = $this->conn->GetAll($sQuery);
  20.  
  21. return $rs->fields;
  22.  
  23.  
  24.  
  25. break;
  26.  
  27.  
  28. default:
  29.  
  30.  
  31. echo "standaard waarde";
  32.  
  33.  
  34. break;
  35. ?>


De variabele is in de switch leeg, terwijl ie voor de switch nog gevuld is. Wat doe ik fout?

Heeft iemand een oplossing?


Groetjes,
Roy

9 antwoorden

Gesponsorde links
Offline Wim - 11/02/2008 18:24
Avatar van Wim Crew algemeen in je script gebruik je ook $this->conn, bedoel je die of heb je het over die print_r?
Offline roy - 11/02/2008 19:23 (laatste wijziging 11/02/2008 20:19)
Avatar van roy PHP gevorderde beide hebben een lege inhoud..

Maar de print_r boven de switch is wel gevuld, met de connectie..


niemand??
Offline timmie_loots - 11/02/2008 20:22 (laatste wijziging 11/02/2008 20:23)
Avatar van timmie_loots PHP gevorderde Je moet geen $this gebruiken, die bestaat niet. Je moet $conn gebruiken. $this verwijst naar niets in die switch, tenzij het in een klasse staat.

Heb je de klasse zelf gemaakt?

EDIT:

Bovenstaande is dus sowieso fout, maar dan volg ik ook niet helemaal waarom hij in eerste instantie wel is ingevuld maar later niet. Weet je zeker dat die statement uitgevoerd wordt? Wat is de output?
Offline roy - 11/02/2008 20:30
Avatar van roy PHP gevorderde dit is de output:

Fatal error: Call to a member function on a non-object in /var/www/html/cms/include/classes/pagina.class.php on line 23

dat is de regel waar this staat....
Offline timmie_loots - 11/02/2008 20:31
Avatar van timmie_loots PHP gevorderde Daar moet je ook geen $this->conn hebben maar $conn. Vervang het eens, en je zegt dat hij voor de switch wel gevuld is; hoe weet je dat dan?
Offline roy - 11/02/2008 20:32
Avatar van roy PHP gevorderde omdat ik print_r doe..

en ik maak gebruik van adodb, dus zie je alle waardes
Offline timmie_loots - 11/02/2008 20:42
Avatar van timmie_loots PHP gevorderde Ja, je doet print_r, maar je zegt net dat de output

Fatal error: Call to a member function on a non-object in /var/www/html/cms/include/classes/pagina.class.php on line 23

is. Als dat niet alles was dan had je dat moeten zeggen, ik vraag om de output; niet de foutmelding. Verder raad ik je toch _echt_ aan dat $this->conn eens te vervangen door $conn; en dan nog eens te kijken of het wél werkt.
Offline roy - 11/02/2008 22:09
Avatar van roy PHP gevorderde Zonder this krijg ik het zelfde,, $conn = null

In de print_r($conn) die voor de switch staat, staat de connectie. Database, wachtwoorden, etc..

Als ik een print_r($conn) doe in de switch dan is $conn leeg...


Is hier een verklaring voor?
Offline timmie_loots - 11/02/2008 23:31
Avatar van timmie_loots PHP gevorderde Nee, $conn zou in beide gevallen gezet moeten zijn, tenzij er andere dingen gebeuren. Een live voorbeeld en de exacte code zouden handig zijn.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.347s