php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2006

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 03.12.2006, 18:58  
Gast
 
Beiträge: n/a
Standard Formular funktioniert nicht

Hi, liebe PHP-Freunde!

Ich habe hier ein Formular, dass nach dem Abschicken Daten in die Datenbank eintragen soll. Nur geschieht nicht nur nichts, sondern es kommt auch keine Fehlermeldung. Zuvor hatte ich nur das reine Skript getestet und es funktionierte. Seitdem ich ein Formular eingebaut habe, funktioniert es nicht mehr.

Weiß vielleicht jemand weiter?

PHP-Code:
<html>
<head>
<?php
if($gesendet){
    require_once(
'DB.php'); 

    
$db DB::connect('mysql://root:@localhost/MiniWikiDB');

    if(
DB::isError($db)){
        die(
$db->getMessage());
    }
    
    
$sqlab "insert Lexikon(Keyword, Description) values ($keyword, $description)";

    
mysql_db_query('MiniWikiDB'$sqlab);

    
$num mysql_affected_rows();

    if (
$num>0)
        echo 
"Es wurde 1 Datensatz hinzugefügt

"
;

    else
    {
        echo 
"Es ist ein Fehler aufgetreten, ";
        echo 
"es wurde kein Datensatz hinzugefügt

"
;
    }
    
    
$db->disconnect(); 
}
?>
</head>
<body>
Bitte Schl&uuml;sselwort und Beschreibung eingeben:



<form action = "DBConnect.php" method = "post">
    Schl&uuml;sselwort


    <input name="keyword">


    
    Beschreibung


    <textarea name="description" cols="50" rows="10"></textarea>


    <input type="submit" name="gesendet">
    <input type="reset">
</form>
</body>
</html>
Liebe Grüße
The Watcher!
 
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 03.12.2006, 19:08  
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

Such mal nach register_globals. Das ist bei Dir vermutlich auf off und das ist auch gut so.

Danach suchst Du mal nach "Super Globals" und nach $_GET und $_POST

Jedes Tutorial zu Parameterübergabe per POST bzw. GET und zu Formularen dürfte es auch tun.

Als nächstes überlegst Du nochmal scharf, wo Du Deine Fehlerausgaben machen würdest, wenn Du welche ausgeben würdest und ob der Text im <head> wirklich was verloren hat.

Und wenn Du schon auf der Suche nach Fehlermeldungen bist, baust Du auch gleich error_reporting(E_ALL) oben in das Script.
Dann dürftest Du wenigstens mal eine Notice wegen einer undefinierten Variable kriegen.
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
Alt 03.12.2006, 20:45  
CIX88
Gast
 
Beiträge: n/a
Standard

Zitat:
<input name="keyword">
Input was ?
Da fehlt sicher type="text" ...
 
Alt 03.12.2006, 20:50  
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 Re: Formular funktioniert nicht

Zitat:
Zitat von Watcher
PHP-Code:
<?php
    $sqlab 
"insert Lexikon(Keyword, Description) values ($keyword, $description)";
?>
Die Syntax lautet korrekt INSERT INTO XYZ.
Nur weil Fehler nicht angemeckert werden, ist es alles andere als sauber.

Außerdem sind $keyword und $description doch sicher Strings. Da müssen selbstversändlich ' ' rum.
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
Alt 03.12.2006, 21:15  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Zitat:
Die Syntax lautet korrekt INSERT INTO XYZ
Unter mysql leider nicht.
Zitat:
INSERT [LOW_PRIORITY | DELAYED] [IGNORE]
[INTO] tbl_name [(col_name,...)]
VALUES ((expression...
Die SQL Syntax vielleicht...


Zitat:
Input was ?
Da fehlt sicher type="text" ...
Auch das stimmt nicht. Die HTML Referenz beschreibt keine Zwangsattribute. type="text" ist default für input elemente.
nikosch ist offline  
Alt 03.12.2006, 22:24  
CIX88
Gast
 
Beiträge: n/a
Standard

Zitat:
Auch das stimmt nicht.
Aha, naja für mich gehören diese Attribute einfach mit rein.
 
Alt 03.12.2006, 22:26  
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 nikosch77
Zitat:
Die Syntax lautet korrekt INSERT INTO XYZ
Unter mysql leider nicht.
Auch in der von Dir zitierten Syntax ist es ja offensichtlich vorgesehen.

Nur weil ein Sprachdialekt das Weglassen erlaubt wird es nicht Pflicht.

Ich hab aber keine Ahnung, ob das aus Überzeugung optional gemacht wurde oder nur als ein Entgegenkommen für einen häufigen Fehler.
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
Alt 04.12.2006, 15:04  
Gast
 
Beiträge: n/a
Standard

Hi,
danke für die Antworten!

Ich habe nun folgendes geändert:

PHP-Code:
$keyword $_POST['keyword'];
    
$description $_POST['description'];
    
    
$sqlab "insert Lexikon(Keyword, Description) values ('$keyword', '$description')"
Funktioniert leider immer noch nicht.

Der PHP-Code wird anscheinend gar nicht aufgerufen, denn es kommt weder eine Fehlermeldung, noch eine Bestätigung, die ich eingebaut habe.

Außerdem habe ich den Head-Tag entfernt.

Liebe Grüße
The Watcher
 
Alt 04.12.2006, 15:12  
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

Du solltest error_reporting(E_ALL) einbauen. Dann wirst Du eine Notice erhalten.

Nicht nur $keyword und $description stammen aus dem Formular. Wenn der PHP-Code innerhalb des If-Blocks nicht ausgeführt wird, woran könnte das dann wohl liegen?
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
Alt 04.12.2006, 17:51  
Gast
 
Beiträge: n/a
Standard

Hi!
Zitat:
Zitat von Der_Gerhard
Nicht nur $keyword und $description stammen aus dem Formular. Wenn der PHP-Code innerhalb des If-Blocks nicht ausgeführt wird, woran könnte das dann wohl liegen?


Danke!

LG
The Watcher
 
 


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
Session funktioniert nicht bei session.use_cookies = Off Quagga PHP Tipps 2007 13 13.01.2007 18:27
leeres Formular PHP Tipps 2005-2 15 05.10.2005 16:49
[Erledigt] Formular testen .... HTML, Usability und Barrierefreiheit 7 19.09.2005 14:03
Probleme mit sehr großem Formular PHP Tipps 2005-2 4 01.09.2005 09:52
Formular und PHP (funktioniert nicht) FBI PHP Tipps 2005-2 10 19.08.2005 10:03
Dynamischer Text in einer Grafik per Formular einfügen PHP Tipps 2005-2 2 19.08.2005 00:55
Kontakrformular funktioniert nur zum Teil PHP Tipps 2005-2 12 18.07.2005 11:24
Aus Datei lesen und in Datei schreiben.. funktioniert nicht FBI PHP Tipps 2005-2 3 03.07.2005 16:55
[Erledigt] PHP Formular ~~wichtig~~ PHP Tipps 2005 27 29.05.2005 19:38
Schleife in Formular Auswertung DDogg PHP Tipps 2005 2 20.04.2005 15:44
Formular mit PHP_SELF funktioniert nicht PHP Tipps 2004 3 24.09.2004 11:38
Formular Mailsend funktioniert nicht. PHP Tipps 2004 1 19.08.2004 21:24
Brauche PHP Formular Beitragsarchiv 9 16.08.2004 16:23
[Erledigt] Formular mit Daten werden auf anderer Seite zusammengefasst PHP Tipps 2004 4 15.08.2004 15:44
[Erledigt] Daten in neuem Formular anzeigen PHP Tipps 2004 6 21.07.2004 10:44

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
formular geht nicht mehr einmal gesendet

Alle Zeitangaben in WEZ +2. Es ist jetzt 13:02 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.