php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 27.12.2005, 18:59  
Benutzer
 
Registriert seit: 01.06.2005
Beiträge: 70
schmiddy
schmiddy eine Nachricht über ICQ schicken
Standard mysql problem: mysql update wird nicht ausgeführt

Nabend community,
bei meinem skript werden alle daten in eine db geschrieben, die antworten in die tabelle forum_ant und die beiträge in forum.

Die zelle "laspost" stellt immer den letzen beitrag da und soll per update geupdatet werden. Er tut es aber net! Hier mal der code: (was kann der fehler sein? Weiter unten ist das Prob mit dem Update, der rest läuft super!)


PHP-Code:
<?php
$threadid
=$HTTP_POST_VARS['threadid'];
$id=$HTTP_POST_VARS['forums_id'];
$cat_id=$HTTP_POST_VARS['cat_id'];
$user=$HTTP_POST_VARS['user'];
$mail=$HTTP_POST_VARS['mail'];
$thema=$HTTP_POST_VARS['thema'];
$text=$HTTP_POST_VARS['text'];
//Zuerst Datum und Uhrzeit generieren:
$punkt=".";
$dpunkt=":";
$uhrzeit="Uhr";
$um "um";
$datum date("d");
$datum .=$punkt;
$datum .=date("m");
$datum .=$punkt;
$datum .=date("Y");
$zeit date("G");
$zeit .=$dpunkt;
$zeit .=date("i");
$zeit .=$uhrzeit;
$all "$zeit";

//Sonderzeichen beachten:
$user=htmlspecialchars ($user);
$user=htmlentities($user);
$betreff=htmlspecialchars ($thema);
$betreff=htmlentities($thema);
$text=htmlspecialchars ($text);
$text=htmlentities($text);
$text=nl2br($text);

//Antwort in die DB schreiben:
include("config.inc.php");
$db=mysql_connect("$host","$user","$pw")
or die (
"[b]Zur Zeit kein Connect zum Datenbankserver![/b]");
mysql_select_db("$dba")
or die (
"[b]Datenbank konnte nicht angesprochen werden[/b]");
$anfrage="INSERT INTO forum_ant (cat_id, beitrags_id, user, email, datum, uhrzeit, betreff, beitragstext, antwort) VALUES ('$cat_id','$threadid','BLA','$mail','$datum','$zeit','$thema','$text','true')";
mysql_query($anfrage)
or die (
"[b]Fehler bei der Datenbankanfrage: [/b]".mysql_error());
//Datum updaten
$anfrage2="SELECT * FROM forum WHERE beitrags_id = '$threadid'";
$ergebnis2=mysql_query($anfrage2);
while(
$row2 mysql_fetch_array($ergebnis2))
{
$update "UPDATE forum Set lastpost = '$all' WHERE lastpost = '$row2[laspost]'";
$write mysql_query($update);
}
//Mögliche Fehler ausgeben lassen mit mysql_errno
//echo "

";
//echo mysql_errno() . "
" . mysql_error() . "n";
//Um die ERNO Funktion zu aktivieren, einfach die "
//" davor entfernen
mysql_close($db);
print (
"

Vielen Dank f&uuml;r Ihren Beitrag!</p>"
);
print (
"[url='index.php?site=forum']Zur&uuml;ck zum Forums&uuml;berblick[/url]");
?>
schmiddy ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 27.12.2005, 19:09  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Dein Schreibfehler "laspost". Versuch doch mal Fehler durch backtracking selbst zu finden.
Ein UPDATE funktioniert nicht? Lass dir den SQL-Befehl so ausgeben, wie er an mysql_query geschickt wird, also mit interpretierten PHP Variablen.
Das geht? Dann prüf die Bedingung, gib den SQL-Befehl am besten in phpMyAdmin ein..

Deine Fragerei wirkt sonst irgendwie kindisch und faul, da du einfach selbst an die Lösung kommen kannst.
Zergling-new ist offline  
Alt 27.12.2005, 19:17  
Benutzer
 
Registriert seit: 01.06.2005
Beiträge: 70
schmiddy
schmiddy eine Nachricht über ICQ schicken
Standard

naja.. faul wohl eher net, aber was genau meinst du mit backtracking?
schmiddy ist offline  
Alt 27.12.2005, 19:18  
Gast
 
Beiträge: n/a
Standard

In einem anderen Thread ist dir dies geschrieben worden:

Btw. $HTTP_*_VARS ist veraltet. Verwende lieber $_GET und $_POST.

Warum ignorierst du das?

Und hältst du Zeilen mit über 200 Zeichen für lesbar und warum rückst du deinen Quellcode nicht ordentlich ein?

Richtig debuggen
1. Man bemerkt, dass ein Skript nicht das tut, was es soll.
2. Man versucht, die Stelle die daran Schuld sein kann, schonmal einzugrenzen. Falls dies nicht geht, wird zunächst das komplette Skript als fehlerhaft angesehen.
3. An markanten Stellen im Skript lässt man sich wichtige Variableninhalte ausgeben und ggf. auch in bedingten Anweisungen eine kurze Ausgabe machen, um zu überprüfen, welche Bedingung ausgeführt wurde (oder auch nicht).
4. Schritt 3 wird so lange wiederholt, bis Unstimmigkeiten im Skript auffallen
5. Damit hat man das Problem (Unstimmigkeit) gefunden und kann versuchen diese zu beheben. Hierzu dienen dann die PHP-Dokumentation und andere Quellen als Ratgeber.
6. Lässt sich das konkrete Problem trotzdem nicht beheben, kann man in Foren um Rat fragen.
7. Das Programm läuft und man kann die Debug-Ausgaben wieder entfernen.

Die Ausgaben per echo kann man sich ersparen, in dem man einen Debugger benutzt, was eigentlich selbstverständlich sein sollte.

Gruß
phpfan
 
Alt 27.12.2005, 20:35  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

@schmiddy:

Du bist offenbar doch ein fauler Mensch:
Übersetzung für "backtracking"


Da von dir keine Initiative oder eigene Lösungsideen kommen werde ich
Fragen von dir zukünftig nicht mehr beantworten, es sei denn du beweist in
der Fragestellung etwas mehr Engagement.

Du willst doch etwas von uns, nicht umgekehrt. Herrje.
Zergling-new 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
Mysql update problem PHP Tipps 2007 8 21.12.2005 15:56
[Erledigt] Problem mit Sonderzeichen PHP -&gt; MySQL -&gt; HTML PHP Tipps 2007 18 07.12.2005 15:23
[Erledigt] Problem beim verbindungsaufbau zum Mysql Server Datenbanken 9 27.10.2005 11:27
MySQL Problem b++ PHP Tipps 2005-2 3 20.09.2005 17:53
MySQL &amp;amp; PHP: Problem mit Password() Datenbanken 10 19.09.2005 11:00
Problem bei Update PHP Tipps 2005-2 10 13.09.2005 15:50
[Erledigt] Mysql + PHP und Datum Problem Datenbanken 11 31.08.2005 12:08
MySQL, PHP und ein großes Problem! Datenbanken 2 27.08.2005 10:51
Suche Tipps für Persormance-Steigerung (Geld für Nützliches) Beitragsarchiv 18 16.08.2005 10:57
einfache mysql abfrage und mysql update haut nicht ganz hin djrace PHP Tipps 2005-2 6 12.08.2005 15:28
[Erledigt] Problem MySQL 3 und 4 PHP-Fortgeschrittene 9 02.08.2005 16:45
MYSQL root login und logging Problem Datenbanken 2 16.03.2005 08:41
mysql installations problem Datenbanken 4 16.02.2005 18:46
mit mysql und php eine datenbank erstellen? Großes Problem PHP Tipps 2004-2 1 16.12.2004 14:53
[Erledigt] Problem mit PHP und MYSQL Datenbanken 6 01.08.2004 05:59

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
mysql erno, http://www.php.de/php-tipps-2007/35242-mysql-problem-mysql-update-wird-nicht-ausgefuehrt.html, mysql update wird nicht ausgeführt, mysqlerno, erno mysql, mysql update date, php mysql update wird nicht ausgeführt, mysql update text, update set wird nicht ausgeführt mysql, mysql update datum, mysql das datenbank-update konnte nicht durchgeführt werden, php mysql script wird nicht korrekt ausgeführt, mysql php update geht nicht kein fehler, mysql_query update geht nicht, c# mysql insert into wird manchmal nicht ausgeführt, mysql update datum problem, mysql upadte datum, hibernate mssql after update trigger wird nicht ausgeführt, mysql update kein errror kein update, mysql php update datum

Alle Zeitangaben in WEZ +1. Es ist jetzt 18:59 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.