php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005-2

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 10.09.2005, 13:35  
Erfahrener Benutzer
 
Registriert seit: 17.07.2005
Beiträge: 100
maccoder
Standard Wo ist der Fehler??????????

Hallo Forum!

Ich werde bald wahnsinnig, da ich hier den Fehler nicht finden kann.

Hier die Datei"reg.html":

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>dateneingabe</title></head>
<body>

<form name="Eingabe" action="writedata.php" method="post">

Vorname:

<input type="text" name="vorname" size="20">


Name:

<input type="text" name="email" size="20">


<input type="submit" value="dateneingabe">
<input type="reset" value="Reset">
</form>

</body></html>


-------------------------------------------------------


Hier die Datei "writedata.php"
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<body>
<?php
$vorname=$HTTP_POST_VARS['vorname'];
$email=$HTTP_POST_VARS['email'];

$server="localhost";
$benutzer="dbu1021758";
$password="xxxxxxxx";
$verbindung=mysql_connect($server,$benutzer,$passw ord);
mysql_select_db("db1021758-1",$verbindung);

$anfrage="INSERT INTO eintragen VALUES ('";
$anfrage.=$vorname;
$anfrage.="', '";
$anfrage.=$email;
$anfrage.="')";
mysql_query($anfrage)
or die ("Fehler bei der Datenbankanfrage");
mysql_close($verbindung);

?>
</body></html>

Wo ist hier zum Teufel der Fehler???????

MfG
Maccoder
maccoder ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 10.09.2005, 13:37  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 2.039
Sclot befindet sich auf einem aufstrebenden Ast
Standard

wo zum teufen bleibt die richtige fragestellung und ausgabe vom script?
was sagt er denn für einen fehler?

und warum so kompliziert?

Code:
$anfrage="INSERT INTO eintragen VALUES ('";
$anfrage.=$vorname;
$anfrage.="', '";
$anfrage.=$email;
$anfrage.="')";
wenns auch einfacher geht:

Code:
$anfrage="INSERT INTO eintragen VALUES ('$vorname', '$email')";

geht das überhaupt so?
ich kenn das nur so:

Code:
$anfrage="INSERT INTO eintragen (vorname,email) VALUES ('$vorname', '$email')";
oder so:

Code:
$anfrage="INSERT INTO eintragen SET vorname='$vorname', email='$email' ";
Sclot ist offline  
Alt 10.09.2005, 14:09  
Erfahrener Benutzer
 
Benutzerbild von DER_Brain
 
Registriert seit: 18.04.2005
Beiträge: 1.541
PHP-Kenntnisse:
Fortgeschritten
DER_Brain ist zur Zeit noch ein unbeschriebenes Blatt
Standard

noch ein paar dinge:

1 error_reporting(E_ALL) am anfang des scriptes platzieren...
2 besser überprüfen, ob die variablen überhaupt existieren (isset bzw. !empty)
3 soweit ich weiß is $_POST besser ( oder NEUER ) und $HTTP_POST_VARS veraltet


mfg
DER_Brain ist offline  
Alt 10.09.2005, 14:11  
Erfahrener Benutzer
 
Registriert seit: 08.11.2004
Beiträge: 2.079
Der_Gerhard ist zur Zeit noch ein unbeschriebenes Blatt
Der_Gerhard eine Nachricht über ICQ schicken
Standard

Das geht AFAIK so, wenn die Reihenfolge der Felder stimmt.
Ist aber nicht empfehlenswert.

Ich bewundere die extrem "aussagekräftige" Thread-Überschrift und die "gekonnte" Einrückung des Codes ....
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
Alt 10.09.2005, 14:14  
Erfahrener Benutzer
 
Registriert seit: 17.07.2005
Beiträge: 100
maccoder
Standard

Hallo Sclot!

Den Code habe ich aus den Buch "PHP Webseiten dynamisch programmieren" aus dem rororo-Verlag und dem Autor Michael Seeboeger-Weichselbaum.

Ich bin daher davon ausgegangen, dass das wohl der richtige Weg ist.

Deine Vorschläge sehen für mich allerdings etwas logischer aus:
geht das überhaupt so?
ich kenn das nur so:

Code:

$anfrage="INSERT INTO eintragen (vorname,email) VALUES ('$vorname', '$email')";


oder so:

Code:

$anfrage="INSERT INTO eintragen SET vorname='$vorname', email='$email' ";

Was machst Du allerdings, wenn äöü und ß in die Datenbank aus einen Formular übertragen musst?

MfG
Maccoder


PSie Fehlerausgabe lautet einfach nur "Fehler bei der Datenbankanfrage".
maccoder ist offline  
Alt 10.09.2005, 14:20  
Erfahrener Benutzer
 
Benutzerbild von DER_Brain
 
Registriert seit: 18.04.2005
Beiträge: 1.541
PHP-Kenntnisse:
Fortgeschritten
DER_Brain ist zur Zeit noch ein unbeschriebenes Blatt
Standard

htmlentities
addslashes

vorm eintragen
und beim ausgeben

stripslashes


mfg Andi

PS: Was machst du mit deiner variante, wenn du äöü ... einträgst?
DER_Brain ist offline  
Alt 10.09.2005, 14:24  
Erfahrener Benutzer
 
Registriert seit: 17.07.2005
Beiträge: 100
maccoder
Standard

Hallo Andi!

Das Script ist nur ein Probelauf für ein Anmeldeformular eines Pferde/Hunde und Katzenportals, bei den sich Züchter, Vereine usw. kostenlos eintragen lassen können.
Mit Umlauten muß ich wohl bei der Beschreibung der Vereine usw. rechnen, die sich eintragen.

MfG
Maccoder
maccoder ist offline  
Alt 10.09.2005, 14:30  
Erfahrener Benutzer
 
Registriert seit: 08.11.2004
Beiträge: 2.079
Der_Gerhard ist zur Zeit noch ein unbeschriebenes Blatt
Der_Gerhard eine Nachricht über ICQ schicken
Standard

Zitat:
Zitat von maccoder
PSie Fehlerausgabe lautet einfach nur "Fehler bei der Datenbankanfrage".
Das ist auch nicht die Fehlermeldung von MySQL, sondern nur die Deines Scriptes.
Mach mal aus dem hier:
PHP-Code:
<?php
 mysql_query
($anfrage)
or die (
"[b]Fehler bei der Datenbankanfrage[/b]"); 
?>
das hier:
PHP-Code:
<?php
 mysql_query
($anfrage)
or die (
"[b]Fehler bei der Datenbankanfrage: [/b]".mysql_error()); 
?>

Außerdem wäre es sehr hilfreich, wenn Du Zitate aus anderen Postings in die dafür vorgesehenen [quote]-Tags packen würdest. Dann weiß man gleich, was von Dir ist und was nicht.
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
Alt 10.09.2005, 14:36  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 2.039
Sclot befindet sich auf einem aufstrebenden Ast
Standard

und.. schlagt mich.. aber selbst wnen sonderzeichen drin vorkommen werden die als string im '' mit an die db übergeben.. oder nicht? laso ich denk mal schon...
Sclot ist offline  
Alt 10.09.2005, 14:39  
Erfahrener Benutzer
 
Registriert seit: 17.07.2005
Beiträge: 100
maccoder
Standard

Hallo "Der_Gerhard"!

Danke für den Hinweis, ebenfalls für Hinweis mit den Quote-Tags.

Nachdem ich das Script abgeändert habe, funktioniert dies einwandfrei

PHP-Code:
<?php
$anfrage
="INSERT INTO eintragen SET vorname='$vorname', email='$email' "
?>
Zur Probe werde ich auch den Codeteil

PHP-Code:
<?php
<?php
 mysql_query
($anfrage)
or die (
"[b]Fehler bei der Datenbankanfrage: [/b]".mysql_error()); 
?>
?>
ausprobieren.

MfG
Maccoder
maccoder ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Include fehler abfangen? fadass PHP Tipps 2005-2 16 23.12.2008 13:07
bitte hilfe! mysql fehler meldung: basicx PHP Tipps 2008 2 22.07.2008 16:36
mysql fehler meldung: basicx Datenbanken 1 22.07.2008 09:48
[Erledigt] Mysql Syntax Fehler Datenbanken 3 06.07.2006 09:58
Hilfe ich find keinen Fehler mehr... GELight Datenbanken 2 01.05.2006 23:33
unerklärlicher fehler in der registrierungssite matthros PHP Tipps 2005-2 8 12.06.2005 18:08
[Erledigt] Seite wird nicht angezeigt, untersch. Fehler bei IE/FF/Safar PHP-Fortgeschrittene 19 31.05.2005 14:52
Blöder MySQL Fehler PHP Tipps 2005 3 15.05.2005 03:14
Fehlermeldung - aber kein fehler... Tschuu HTML, Usability und Barrierefreiheit 16 14.03.2005 15:56
Wo liegt der fehler?? PHP-Fortgeschrittene 5 22.12.2004 09:54
[Erledigt] mysql fehler PHP Tipps 2004 2 03.11.2004 00:32
Hilfe ich finde den Fehler nicht! PHP Tipps 2004 2 07.10.2004 17:40
array_push nur in begrenzter Anzahl ausführen ? PHP Tipps 2004 2 07.09.2004 09:05
mysql_real_escape_string - Fehler Schaelle Datenbanken 0 03.07.2004 23:32
Paradox, Fehler bei Berechnung in MySQL MrNiceGuy Datenbanken 0 23.06.2004 16:09

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
michael seeboeger-weichselbaum

Alle Zeitangaben in WEZ +2. Es ist jetzt 08:28 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.