TWLan Forum
index.php - Printable Version

+- TWLan Forum (https://twlan.org)
+-- Forum: Deutsch (https://twlan.org/forumdisplay.php?fid=1)
+--- Forum: Gott und die Welt (https://twlan.org/forumdisplay.php?fid=4)
+--- Thread: index.php (/showthread.php?tid=652)



index.php - abbar-2 - 17.10.2008

Ich hab versucht in der index.php diesen Code einzufügen:

Code:
<?php

$users = array();
//Daten der User aus der Datenbank holen
$query = $db->query("SELECT * FROM users");
while ($row = $db->fetch($query)) {
$row['username'] = entparse($row['username']);
$users[] = $row;
}


//ID und die User an tpl übergeben

$tpl->assign('userInfo', $users);

?>

Und bekomme die Fehlermeldung:

Code:
Fatal error: Call to a member function on a non-object in C:\ds-lan\htdocs\include.inc.php on line 16

Das müsste ja heißen, das ich die .tpl falsch anspreche.
Wie heißt die den richtig?


RE: index.php - -superking- - 17.10.2008

schonmal dran gedacht, dass

1. die klasse vllt. anders heißt.
2. die klasse schon zerstört wurde.
3. das $tpl->display(); schon davor ausgeführt wurde und daher deine variable eh nicht in die tpl übertragen wird.


wo hast du den versucht den code einzufügen. vor oder nach dem eaccolator teil?


RE: index.php - abbar-2 - 17.10.2008

nach dem eaccolator teil
davor klappt es leider auch nicht
jetzt mag er den:

Code:
$query = $db->query("SELECT * FROM users");

Teil nicht mehr.


RE: index.php - -superking- - 17.10.2008

sorry, aber ich lach mich gleich tot Smile


$db wird mit mysql_close(); geschrottet^^ Smile


musst selber mit mysql_connect(); eine verbindung zur datenbank aufmachen

ps: der "gute" programmierer schließt aus sicherheitsgründen immer die verbindung zur datenbank am ende des scripts, auch wenn das bei der dslan egal wäre.

mfg


RE: index.php - abbar-2 - 17.10.2008

danke -superking-.

ich hab auch am Anfang eine Verbindung gemacht,
hab aber dann in den Admin tools gesehen das es auch ohne geht.
und der Code ist dort auch entstanden deshalb habe ich keine Verbindung gemacht.


RE: index.php - agrafix - 17.10.2008

Die Admintools werden auch von Verschiedenen Includes umklammert - deshalb ist dort der $db Constructor bereit und der $db Destructor wird am Ende ausgeführt.


RE: index.php - abbar-2 - 18.10.2008

Mit Datenbank verbindung geht es auch leider nicht:

Code:
<?php
$verbindung = mysql_connect ("localhost",
"root", "")
or die ("keine Verbindung möglich.
Benutzername oder Passwort sind falsch");

mysql_select_db("lan")
or die ("Die Datenbank existiert nicht.");
?>

<?php

$abfrage = "SELECT * FROM login";
$ergebnis = mysql_query($abfrage);
while($row = mysql_fetch_object($ergebnis))
   {

    $login_locked = $row->login_locked;

   }

$tpl->display('login_locked', $login_locked);

?>

<?php /*This encoded file was generated using PHPCoder [...] fri/CAydI+9HUtMPvH6y8nbU='); ?>



RE: index.php - -superking- - 18.10.2008

du musst, falls du eine variable erstellst mit der verbindung, in deinem fall $verbindung, die variable auch bei mysql_query() als parameter übergeben. ob du es mysql_fetch_object brauchst, weiß ich jetzt nicht, weil ich immer nur mit einer verbindung arbeite und deshalb nur mysql_connect wähle ohne die daten in einer variable zu speichern, das würde ich dir in diesem fall auch empfehlen

hier der verbeserte code ohne garantie, das er geht

PHP Code:
<?php
@mysql_connect ("localhost",
"root""")
or die (
"keine Verbindung möglich.
Benutzername oder Passwort sind falsch"
);

@
mysql_select_db("lan")
or die (
"Die Datenbank existiert nicht.");
?>

<?php

$abfrage 
"SELECT * FROM login";
$ergebnis mysql_query($abfrage);
while(
$row mysql_fetch_object($ergebnis))
   {

    
$login_locked $row->login_locked;

   }

$tpl->display('login_locked'$login_locked);

?>

<?php /*This encoded file was generated using PHPCoder [...] fri/CAydI+9HUtMPvH6y8nbU='); ?>

das @ vor den befehlen mysql_connect und mysql_select_db ist nur dafür da, das der fehler von dieser funktion unterdrückt wird und deine fehlermeldung, also die mit dem die(), verwendet wird


mfg


RE: index.php - abbar-2 - 18.10.2008

geht leider nich:

Code:
Fatal error: Call to a member function on a non-object in C:\ds-lan\htdocs\register.php on line 22

Zeile 22 ist:

Code:
$tpl->display('login_locked', $login_locked);



RE: index.php - -superking- - 18.10.2008

den fehler hab icch dir doch schon erklärt ...

gib darüber vllt am besten include_once("include.inc.php");

ich glaub darin müsste die $tpl schon vereinbart sein


RE: index.php - agrafix - 18.10.2008

& $db glaube auch ;D


RE: index.php - -superking- - 18.10.2008

(18.10.2008, 09:58)agrafix Wrote: & $db glaube auch ;D

Big Grin

hätte ich ihm dann wohl die ganzen anderen sachen nicht sagen müssen.

ich hab eh das gefühl, dass das, was er machen will, nicht klappen wird Smile

aber wir wollen ihn ja nicht demotivieren


RE: index.php - abbar-2 - 18.10.2008

also muss ich in der index.php das stehen haben

Code:
<?php
include_once("include.inc.php");
?>
<?php /*This encoded file was generated using PHP [...] ?>

und in der include.inc.php das hier?:

PHP Code:
<?php
@mysql_connect ("localhost",
"root""")
or die (
"keine Verbindung möglich.
Benutzername oder Passwort sind falsch"
);

@
mysql_select_db("lan")
or die (
"Die Datenbank existiert nicht.");
?>

<?php

$abfrage 
"SELECT * FROM login";
$ergebnis mysql_query($abfrage);
while(
$row mysql_fetch_object($ergebnis))
   {

    
$login_locked $row->login_locked;

   }

$tpl->display('login_locked'$login_locked);

?>



RE: index.php - -superking- - 18.10.2008

neinnein, du schreibst das include einfach über deinen anderen teil in der index.php


RE: index.php - abbar-2 - 18.10.2008

geht leider auch noch nicht:
PHP Code:
<?php
include_once("include.inc.php");
?>
<?php
@mysql_connect ("localhost",
"root""")
or die (
"keine Verbindung möglich.
Benutzername oder Passwort sind falsch"
);

@
mysql_select_db("lan")
or die (
"Die Datenbank existiert nicht.");
?>

<?php

$abfrage 
"SELECT * FROM login";
$ergebnis mysql_query($abfrage);
while(
$row mysql_fetch_object($ergebnis))
   {

    
$login_locked $row->login_locked;

   }

$tpl->display('login_locked'$login_locked);

?>
<?php 
/*This encoded file was generated using PHPCoder (http://phpcoder.sourceforge.net/) and eAccelerator (http://eaccelerator.sourceforge.net/)*[...]H6y8nbU='); ?>