Gegen Bilderklau - Das Original (https://www.gegen-bilderklau.net/index.php)
- Design, Website, Copyright (https://www.gegen-bilderklau.net/board.php?boardid=80)
--- Homepagehilfe (https://www.gegen-bilderklau.net/board.php?boardid=27)
---- Homepagehilfe - Archiv (https://www.gegen-bilderklau.net/board.php?boardid=139)
----- [PHP & MySQL] not a valid MySQL result resource?! (https://www.gegen-bilderklau.net/thread.php?threadid=124330)


Geschrieben von Lena-Aquila am 16.12.2007 um 19:19:

  not a valid MySQL result resource?!

Hi Leute,
ich bin mal wieder mit meinem Latein am Ende...
Und zwar habe ich folgenden Code:
php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Unbenanntes Dokument</title>
</head>

<body>
<?php
include "../database.inc.php";
echo "<form action=$_SERVER[PHP_SELF] method=post>
       <input type=hidden name=by value=Test>
       <input type=hidden name=kat value=3>
       Titel:<br>
       <input type=text name=title><br>
       Nachricht:<br>
       <textarea name=post1 wrap=PHYSICAL></textarea><br>
       <input type=submit name="send" value=Abschicken>
       </form>";
       if (isset($_POST[send])) {
         $time date("." "." Y);
         echo $time "<br>";
         echo $_POST[by] . "<br>";
         $insertthread "INSERT INTO `threads` ( `id` , `titel` , `katid` , `by` , `date` , `site` )
VALUES (
NULL , 'flala', '2', 'Test', '16.12.2007', 'vrh'
)
";
         $threadres mysql_query($insertthread);
         $thread mysql_fetch_assoc($threadres);
         $byid "SELECT * FROM `mitglieder` WHERE `name`='$_POST[by]'";
         $byidres mysql_query($byid);
         $by mysql_fetch_assoc($byidres);
         $insertpost "INSERT INTO `posts` VALUES ('', '$thread[id]', '$by[id]', '$_POST[post1]', '$time')";
         if (mysql_query($insertpost)) {
           echo "Thema erfolgreich erstellt.";
         }
       }
?>
</body>
</html>

und ich kriege
Zitat:

16.12.2007
Test

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in C:\Programme\xampp\htdocs\gg\forum\test.php on line 31
Thema erfolgreich erstellt.

raus. Es funktioniert alles - bis auf dieses verflixte mysql_fetch_assoc() in Z.30... Und ich habe keine Ahnung, wieso... Wahrscheinlich seh' ich mal wieder den Wald vor lauer Bäumen nicht.
LG, LMB, Aqui



Geschrieben von Lena-Aquila am 24.12.2007 um 13:38:

 

Das sollen einfach nur Platzhalterdaten sein, um zu sehen ob es an den Variablen liegt...



Geschrieben von ProtexX am 26.12.2007 um 14:34:

 

Möglicherweise liegt es daran, dass bereits ein Fehler in Zeile 30 Auftritt, weshalb $threadres von mysql_query() kein richtiger Wert zugeordnet wird.
Ich würde sagen, dass liegt daran, dass du in deinem Query versuchst der "ID" einen Wert von NULL zuzuordnen. Das Problem könnte darin bestehen, dass "ID" die Eigenschaft "Not null" zugeordnet ist.

Versuch mal, deinen Query wie folgt umzuändern:
code:
1:
INSERT INTO `threads` (`titel` , `katid` , `by` , `date` , `site` ) VALUES ('flala', '2', 'Test', '16.12.2007', 'vrh')



Geschrieben von Yanu am 26.12.2007 um 14:46:

 

Mit der Lösung von ProtexX sollte es funktionieren - ich hätte aber noch einen Tipp für dich. Wenn du diesen angewendet hättest, dann wäre auch ausgegeben worden, dass das nicht mit NULL sein darf.

php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
$insertthread "INSERT INTO `threads` ( `id` , `titel` , `katid` , `by` , `date` , `site` )
VALUES (
NULL , 'flala', '2', 'Test', '16.12.2007', 'vrh'
)
";
$threadres mysql_query($insertthread) or die(mysql_error());
$thread mysql_fetch_assoc($threadres);

$thread mysql_fetch_assoc($threadres); ?? Was hast Du vor?

Füge immer hinter mysql_query() noch: or die(mysql_error());

Das bewirkt, dass dein Script gestoppt wird, also nicht mehr ausgeführt und dass du eine Fehlermeldung bekommst. Also in diesem Fall, würde diese etwa so aussehen: NULL is not a vaild argument for id.



Geschrieben von Lena-Aquila am 30.12.2007 um 17:36:

 

DAnke, ich probier's gleich aus!
LG, LMB, Aqui


Forensoftware: Burning Board, entwickelt von WoltLab GmbH