Webmaster Forum Logo Part 1 Webmaster Forum Logo Part 2
Webmaster Forum Logo Part 3
     
 
  :: Anmeldung

Benutzername:

Registrierung...

Passwort:

Passwort vergessen?

angemeldet bleiben


  
  :: Umfrage
Welche sozialen Netzwerke benutzt du regelmäßig?

 Facebook
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 73%
 keines
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 22%
 Google+
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 19%
 Twitter
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 11%
 Xing
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 6%
 schülerVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 6%
 meinVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 4%
 studiVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 4%
 MySpace
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 2%
 LinkedIn
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 2%

 ges. 393 Stimmen
 
  :: Buttons

Valid XHTML 1.0 Transitional

Dabei seit: 28.09.2007

Beiträge: 967

 

1 Zum Seitenanfang

Samstag, 26. Januar 2008, 12:08

mysql+abfrage funktioniert nicht

moin,
ich meld mich auch mal wieder :D
mein problem: ich hab en formular wo man daten eingeben kann die dann übergeben werden und anschließend in eine tabelle eingetragen werden sollen.
hab jetz aber ein problem: die daten werden irgendwie nicht in die tabelle geschrieben.
fehlermeldung: Resource id #3
mein code:

PHP-Quelltext

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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<?php
    mysql_connect("localhost""root")
  or die
  ("Keine Verbindung moeglich");
  mysql_select_db("gb")
  or die
  ("Die Datenbank existiert nicht.");
  

  
$name $_POST["Name"]; //Name wird übergeben
$email $_POST["mail"]; //mail wird übergeben
$comments $_POST["comments"]; //comments wird übergeben

$eintrag "INSERT INTO gb (id, name, text) VALUES ('$name', '$email', '$comments')"//Eintrag
$eintragen mysql_query($eintrag);

$abfrage "SELECT * FROM gb";
$ergebnis mysql_query($abfrage);
while($abfrage mysql_fetch_object($ergebnis))
{ 
  echo $ergebnis; 
}



if ($name == "")
{
  echo "Bitte gebe einen Namen ein.<br>"; 
}
if($email == "")
{
  echo "Bitte gebe eine eMail Adresse an.<br>";
}
if($comments == "")
{
  echo "Willst du nichts ins Kommentarfeld schreiben?";
}
 
 

?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  <meta http-equiv="content-type" content="text/html; charset=windows-1250">
  <meta name="generator" content="PSPad editor, www.pspad.com">
  <title></title>
  </head>
  <body>
  <form action="<?php "PHP_SELF"?>" method="post">
  Name: <input type="text" name="Name">
  <br>
  eMail: <input type="text" name="mail">
  Kommentare:<br>
  <textarea name="comments"></textarea>
  <br>
  <input type="submit" value="Senden">
  </form>

  </body>
</html>


hab google schon "durchforstet" aber nichts gefunden was mir weiterhilft.
ich hoffe ihr könnt mir helfen.

mfg
ak
 

Skittles

Moderator

Dabei seit: 14.02.2004

Beiträge: 3 014

 

2 Zum Seitenanfang

Samstag, 26. Januar 2008, 12:39

Quellcode

1
$eintrag = "INSERT INTO gb (id, name, text) VALUES ('$name', '$email', '$comments')"; //Eintrag


schau dir den nochmal genau an, der stimmt garantiert nicht. ich gehe mal davon aus, dass du nen auto_increment benutzt, lass dann da die id komplett aus dem insert raus.

die ausgabe wird von zeile 24 produziert .. da musst du mit $abfrage arbeiten. echo($abfrage); wird dir aber auch nichts bringen ... nur so am rande.

~!__/
..o.o

This is Einkaufswagen.
Copy Einkaufswagen into your signature to help him on his way to world domination.
 

Dabei seit: 28.09.2007

Beiträge: 967

 

3 Zum Seitenanfang

Samstag, 26. Januar 2008, 13:14

mmh, $ergebnis = mysql_query($abfrage); fragt doch die daten in der datenbank ab oder etwa nicht? und wenn ich da dann echo $abfrage mache sollten die daten doch eglt. ausgegeben werden.

wie mach ich des denn dann sonst? weiß jetz keine andre lösung
 

OnkelJürgen

Moderator

Dabei seit: 30.12.2002

Beiträge: 1 719

 

4 Zum Seitenanfang

Samstag, 26. Januar 2008, 14:48

mysql_query gibt doch nur eine Resource-ID zurück ...
Zum auslesen brauchst du mysql_fetch_array _row, _assoc oder dergleichen.

Edit:

Oh, ich sehe gerade, du willst was eintragen ja, wie Skittles schon sagte, da werden wohl die Typen nicht mit den Werten übereinstimmen, die eingetragen werden sollen.

Ansonsten lass die mit mysql_error() mal den richtigen Fehler ausgeben.

Das andere ... wenn du ein "Object" aus den Sachenmachst, die du ausliest, kann auch nur die Resource-ID zurückkommen, wenn, dann müsstest du's auch wie eines auslesen, in dienem Fall z.B. $ergebnis->name oder dergleichen, wobei mysql_fetch_array halt auch reichen würde. Auslesen über $ergebnis['spaltenname'].
Auf jede Frage gibt es eine Antwort, man muss nur lange genug danach suchen.


z.B. auf www.netscripter.de :-P

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »OnkelJürgen« (26. Januar 2008, 14:55)

 

Dabei seit: 28.09.2007

Beiträge: 967

 

5 Zum Seitenanfang

Samstag, 26. Januar 2008, 15:17

danke :thumbup:
die daten stehn in der datenbank, nur: wie krieg ich die jetzt angezeigt? mit

$abfrage = "SELECT * FROM gb";
$ergebnis = mysql_query($abfrage);
while($abfrage = mysql_fetch_array($ergebnis))
{
echo $ergebnis['text'];
echo $ergebnis['name'];
echo $ergebnis['id'];
}
gehts nicht.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »andreaskeil« (26. Januar 2008, 15:17)

 

OnkelJürgen

Moderator

Dabei seit: 30.12.2002

Beiträge: 1 719

 

6 Zum Seitenanfang

Samstag, 26. Januar 2008, 15:28

Jetzt musst du natürlich auch $abfrage auslesen. Siehe auch meine Links oben. ;)
Auf jede Frage gibt es eine Antwort, man muss nur lange genug danach suchen.


z.B. auf www.netscripter.de :-P
 

Dabei seit: 28.09.2007

Beiträge: 967

 

7 Zum Seitenanfang

Samstag, 26. Januar 2008, 15:31

funktioniert 1a danke :thumbup: ;)

jetz muss ich nur noch die ip irgendwie übergeben lassen.
 

OnkelJürgen

Moderator

Dabei seit: 30.12.2002

Beiträge: 1 719

 

8 Zum Seitenanfang

Samstag, 26. Januar 2008, 15:35

$_SERVER["REMOTE_ADDR"]; und wenn wir schon mal dabei sind wäre auch $_SERVER["PHP_SELF"]; zu empfehlen.
Auf jede Frage gibt es eine Antwort, man muss nur lange genug danach suchen.


z.B. auf www.netscripter.de :-P