"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

HELP: object,array in PHP? HILFE

GrOnD 16.05.2008 - 17:44 2741 15
Posts

grond

---------
Registered: Aug 2004
Location: 8401
Posts: 3193
hallo leute :)
also ich hab ein problem, wir müssen in der schule eine "kleine" homepage bauen, und da soll ein fckeditor rein.
"wir" haben es in der schule mit einem Beispiel schon gemacht, nur wenn ich es komplett gleich nachbaue funktioniert es daheim nicht, auch nicht das beispiel, welches in der schule funktionierte.
Hier die Fehlermeldung:

Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in D:\Programme\xampp\htdocs\xampp\0FCK\editor\ausgabe.php on line 17

ich habs auch mit mysql_fetch_array probiert aber dann kommt die gleiche Fehlermeldung nur halt mit array.

was könnte schuld sein? ist meine mysql-version (gibts sowas) zu alt?
mfg & tia grond
Bearbeitet von grond am 17.05.2008, 13:23

Spikx

My Little Pwny
Avatar
Registered: Jan 2002
Location: Scotland
Posts: 13504
Ohne code wird das nix...

grond

---------
Registered: Aug 2004
Location: 8401
Posts: 3193
Code: PHP
<html>
<head>
	<title>Seite mit Editor</title>
	<link rel="stylesheet" href="../system/style.css" type="text/css">
</head>
<body>
	<H1><a align="center">Seiten mit Editor</a></H1>
	<table align="center" border="0" cellspacing="0" cellspacing="3">
		<tr>
			<th width="350" style="border-bottom:2px solid black;">Seitenname</th>
			<th width="150" style="border-bottom:2px solid black;"> </th>
		</tr>
		<?php
			include("../system/connect.php");
			$sql = "SELECT * FROM editor ORDER BY title ASC";
			$query = mysql_query($sql); 
			while($ausgabe = mysql_fetch_object($query)) [U]Hier ist der fehler/kein fehler..[/U]
			{
		        echo "
                    <tr>
                        <td style=\"border-bottom:1px solid black;\">" . $ausgabe->title . "</th>
                        <td style=\"border-bottom:1px solid black;\" align=\"center\">

                        	<a href=\"anzeigen.php?id=$ausgabe->id\" target=\"_blank\">anzeigen</a> |
                        	<a href=\"edit.php?id=$ausgabe->id\">ändern</a></th>
                    </tr>
				";
			}
		?>
	</table>
</body>
</html>

2. Hier mit tabelle (beim ersten vergessen, trotzdem fehler
Code: PHP
	<?php
			include("../system/connect.php");
			$tabelle= "seiten";
			$sql = "SELECT * FROM $tabelle ORDER BY title ASC";
			$query = mysql_query($sql);
			while($ausgabe = mysql_fetch_array($query))
			{
		        echo "
                    <tr>
                        <td style=\"border-bottom:1px solid black;\">" . $ausgabe->title . "</th>
                        <td style=\"border-bottom:1px solid black;\" align=\"center\">

                        	<a href=\"anzeigen.php?id=$ausgabe->id\" target=\"_blank\">anzeigen</a> |
                        	<a href=\"edit.php?id=$ausgabe->id\">ändern</a></th>
                    </tr>
				";
			}
		?>
Bearbeitet von grond am 16.05.2008, 18:22

fatmike182

Agnotologe
Registered: Oct 2005
Location: VIE
Posts: 4223
== statt =?
..bledsinn - sry

jedenfalls vermiss ich das <th> das in der While zu beginn zu geht
Bearbeitet von fatmike182 am 16.05.2008, 18:58

freezer90

Ex SE Student
Avatar
Registered: Aug 2002
Location: Linz
Posts: 768
1. um code zu posten gibts tags ... dann wär das auch a bissal lesbarer.
2. fehler würde ich sagen, passiert eher hier: "$query = mysql_query($sql);"
da kommt anscheinend kein ordentliches result zurück. hast schon mal das statement im mysql admin ausgeführt? kriegst da überhaupt ein ergebnis?

fatmike182

Agnotologe
Registered: Oct 2005
Location: VIE
Posts: 4223
naja, aber was mich irritiert ist, dass er offensichtlich die query ja durchfuerhen kann, also es $sql und $query gibt. (?)

btw: den mehrzeilen-echo-tag find ich unschoen.
Ich mach lieber fuer sowas die php-Tags zu hau dort ein echo rein wo ichs dann doch benoetige

Spikx

My Little Pwny
Avatar
Registered: Jan 2002
Location: Scotland
Posts: 13504
mysql_query kann auch false zurückgeben, dann ist $query keine gültige MySQL resource.

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25423
Tags eingebaut. Jetzt ist es doch schöner, oder? :)

Lies dir doch einfach mal die Anleitung durch: http://de2.php.net/mysql_query

Return Values:

1.) FALSE on error
2.) mysql_query() will also fail and return FALSE if the user does not have permission to access the table(s) referenced by the query.

Am besten du quetscht für Testzwecke ein die(mysql_error()) rein, wenn $query === false, dann solltest du eine Meldung bekommen was da momentan bei dir falsch läuft.

grond

---------
Registered: Aug 2004
Location: 8401
Posts: 3193
ahm ich bin ein ziemlicher anfänger auf dem "coding" gebiet, also hab ich das meiste nicht verstanden was ihr meint :/

naja um meine anfängliche frage zu wiederholen: Wie kann es sein, dass ein code mit tabelle und allem, welches in der Schule schon funktioniert hat, ein ergebnis ausbrachte und hier erscheint ein Fehler?

/das was mat gesagt hat muss ich mal probieren, hoffe ich schaff das^_^

Vivo

Dreamworker
Avatar
Registered: May 2002
Location: Tal der Könige
Posts: 1478
Da gibts nix zu schaffen, einfach das zeug aus mats link copy/paste :)

Code: PHP
if (!$query) {
    die('Ungültige Abfrage: ' . mysql_error());
}

... vor der while-Schleife einfügen!

grond

---------
Registered: Aug 2004
Location: 8401
Posts: 3193
so hab ich gemacht
bekomm dann diese Fehlermeldung

Parse error: parse error, unexpected $end in
D:\Programme\xampp\htdocs\xampp\spoerk\admin\editor\ausgabe.php on line 36

in line 36 steht:
</html>

was sagt mir das jetzt? alle anderen fehlermedlungen sind weg

jives

And the science gets done
Avatar
Registered: Sep 2001
Location: Baden
Posts: 3548
Zitat von GrOnD
was sagt mir das jetzt?
Das du den neuen Code posten sollst :)

grond

---------
Registered: Aug 2004
Location: 8401
Posts: 3193
ja is ganz gleich wie der alte, nur dass ich das was vivo gepostet hat hineingecopyd habe
aber hier nochmal:

Code: PHP
<html>
<head>
	<title>Seite mit Editor</title>
	<link rel="stylesheet" href="../system/style.css" type="text/css">
</head>
<body>
	<H1><a align="center">Seiten mit Editor</a></H1>
	<table align="center" border="0" cellspacing="0" cellspacing="3">
		<tr>
			<th width="350" style="border-bottom:2px solid black;">Seitenname</th>
			<th width="150" style="border-bottom:2px solid black;"> </th>
		</tr>
		<?php
			include("../system/connect.php");
			$tabelle= "editor";
			$sql = "SELECT * FROM $tabelle ORDER BY title ASC";
			$query = mysql_query($sql);
			if (!$query) { 
		   	die('Ungültige Abfrage: ' . mysql_error()); 

			while($ausgabe = mysql_fetch_object($query))
			{
		        echo "
                    <tr>
                        <td style=\"border-bottom:1px solid black;\">" . $ausgabe->title . "</th>
                        <td style=\"border-bottom:1px solid black;\" align=\"center\">

                        	<a href=\"anzeigen.php?id=$ausgabe->id\" target=\"_blank\">anzeigen</a> |
                        	<a href=\"edit.php?id=$ausgabe->id\">ändern</a></th>
                    </tr>
				";
			}
		?>
	</table>
</body>
</html>

fatmike182

Agnotologe
Registered: Oct 2005
Location: VIE
Posts: 4223
kann das wegen dem fehlenden } des If sein?

Blair

Big d00d
Avatar
Registered: Dec 2004
Location: Graz
Posts: 177
in zeile 19 machst du beim if eine { auf und schließt sie aber nicht mehr. tu sie weg oder mach sie zu, das wird ihn besänftigen
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz