CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden |
21.03.2006, 02:25:04
|
Anfänger
|
|
Registriert seit: Mar 2006
Beiträge: 19
|
|
sql Update prob
Was mache ich falsch?
Möchte ein Update der Tabelle erzeugen:
Fehlermeldung:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '('xxx','xxx',' at line 1
PHP-Code:
$anfrage="UPDATE $dbtab ('$_POST[xxx]','$_POST[xxx]')";
wo ist der denkfehler?
|
21.03.2006, 02:36:45
|
Junior Member
|
|
Registriert seit: Apr 2005
Beiträge: 309
|
|
AW: sql Update prob
WHERE???
Will sagen : Woher soll er wissen, welchen Datensatz er UPDATEN soll?
|
21.03.2006, 07:23:56
|
Senior Member
|
|
Registriert seit: Oct 2004
Ort: Werdenberg / Schweiz
Alter: 36
Beiträge: 1.476
|
|
AW: sql Update prob
WHERE ist nicht notwendig... aber SET!!
UPDATE tabelle SET spalte1 = wert1, spalte2 = wert2 [WHERE spalte3 = wert3]
__________________
Opendix lehnt jegliche Haftung für evtl. vorhandene Fehler in der Grammatik sowie der Satzstellung ab! Bitte wenden Sie sich an die Tastatur!
Betatester gesucht:
Skiclub Gams / CEVI Grabs
|
21.03.2006, 08:09:36
|
SELFPHP Guru
|
|
Registriert seit: Jan 2004
Ort: Leipzig
Beiträge: 4.549
|
|
AW: sql Update prob
Zitat:
Zitat von drbestminus
Was mache ich falsch?
|
du liest nicht, hier steht es wie es aussehen muss:
http://dev.mysql.com/doc/refman/4.1/en/update.html
und zudem ist es immer nützlich sich das sql mal per echo ausgeben zu lassen und dann anzuschauen. manchmal sieht es nämlich nicht so aus wie erwartet.
|
21.03.2006, 12:45:57
|
Anfänger
|
|
Registriert seit: Mar 2006
Beiträge: 19
|
|
AW: sql Update prob
...
Geändert von drbestminus (21.03.2006 um 12:52:23 Uhr)
|
21.03.2006, 12:51:04
|
Anfänger
|
|
Registriert seit: Mar 2006
Beiträge: 19
|
|
AW: sql Update prob
Was ist da nicht richtg?
Fehlermeldung=You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' Schleppertyp=, Baugruppe=, Verwendungsstelle=, Bezeichnung=, Anzahl=, Lagerart=' at line 1
Eingabe Fomular:
PHP-Code:
include("config.php");
$link=mysql_connect("$sqlhost","$sqluser","$sqlpassword");
mysql_select_db("$sqldb");
$anfrage="SELECT * FROM $dbtab WHERE Hersteller='$_POST[Radio]'; ";
$ergebnis=mysql_query($anfrage);
$zeile = mysql_fetch_row($ergebnis);
echo "Hersteller: <INPUT type='text' name='Hersteller' value='$zeile[0]' size ='40' maxlength='40'><BR>";
echo "Schleppertyp: <INPUT type='text' name='Schleppertyp' value='$zeile[1]' size ='40' maxlength='40'><BR>";
echo "Baugruppe: <INPUT type='text' name='Baugruppe' value='$zeile[2]' size ='40' maxlength='40'><BR>";
echo "Verwendungsstelle: <INPUT type='text' name='Verwendungsstelle' value='$zeile[3]' size ='40' maxlength='40'><BR>";
echo "Lagerart: <INPUT type='text' name='Lagerart' value='$zeile[4]' size ='40' maxlength='40'><BR>";
echo "Anzahl: <INPUT type='text' name='Anzahl' value='$zeile[5]' size ='2' maxlength='2'><BR>";
echo "Bezeichnung: <INPUT type='text' name='Bezeichnung' value='$zeile[6]' size ='40' maxlength='40'><BR>";
echo "Abmasse: <INPUT type='text' name='Abmasse' value='$zeile[7]' size ='40' maxlength='40'><BR>";
echo "Zusatzinfo: <INPUT type='text' name='Zusatzinfo' value='$zeile[8]' size ='40' maxlength='40'><BR>";
mysql_free_result($ergebnis); mysql_close($link);
zum updaten:
PHP-Code:
include("config.php");
$link=mysql_connect("$sqlhost","$sqluser","$sqlpassword");
mysql_select_db("$sqldb");
$anfrage="UPDATE $dbtab SET Hersteller=$zeile[0], Schleppertyp=$zeile[1], Baugruppe=$zeile[2], Verwendungsstelle=$zeile[3], Bezeichnung=$zeile[4], Anzahl=$zeile[5], Lagerart=$zeile[6], Abmasse=$zeile[7], Zusatzinfo=$zeile[8]";
if ($ergebnis=mysql_query($anfrage))
{echo "Datensatz geändert ";}
else
{echo "Fehlermeldung=".mysql_error();};
mysql_close($link);
|
21.03.2006, 13:08:04
|
SELFPHP Guru
|
|
Registriert seit: Jan 2004
Ort: Leipzig
Beiträge: 4.549
|
|
AW: sql Update prob
du liest immer noch nicht:
Zitat:
Zitat von feuervogel
und zudem ist es immer nützlich sich das sql mal per echo ausgeben zu lassen und dann anzuschauen. manchmal sieht es nämlich nicht so aus wie erwartet.
|
auch dies hier kann ich empfehlen:
http://selfphp.com/forum/showthread.php?t=8195
|
21.03.2006, 13:15:28
|
|
SELFPHP Guru
|
|
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
|
|
AW: sql Update prob
Zitat:
Zitat von drbestminus
Was ist da nicht richtg?
|
Zwei Dinge:
1. fehlerhafte Strings
PHP-Code:
$anfrage="UPDATE $dbtab SET Hersteller='$zeile[0]', Schleppertyp='$zeile[1]', ...";
2. es fehlt noch das WHERE, weil sonst alle Datensätze geändert werden:
PHP-Code:
$anfrage="UPDATE $dbtab SET Hersteller='$zeile[0]', Schleppertyp='$zeile[1]', ... WHERE spalte='$wert'";
Beachte unbedingt noch das:
http://de.php.net/mysql_escape_string
Falls Du Formularvariable in SQL Strings verwendest:
wenn magic_quotes_gpc = On ist, behandelt PHP alle Formularvariablen automatisch mit addslashes(). In dem Falle würde mysql_escape_string() das schon 'escapte' noch mal 'escapen'.
|
22.03.2006, 12:17:00
|
Anfänger
|
|
Registriert seit: Mar 2006
Beiträge: 19
|
|
AW: sql Update prob
Ich denke die WHERE ist nicht notwendig.
Es sollen ja auch alle überschrieben werden.
Da alle werte in dem Vorigen Fomular enthalten sind.
@Meikel
Verstehe nicht genau was du damit meinst?
Zitat:
In dem Falle würde mysql_escape_string() das schon 'escapte' noch mal 'escapen'
|
so geht es auch nicht:
PHP-Code:
$anfrage="UPDATE $dbtab SET Hersteller=($_POST[hersteller],$_POST[schleppertyp],$_POST[baugruppe],$_POST[verwendungsstelle],$_POST[bezeichnung],$_POST[anzahl],$_POST[lagerart],$_POST[abmasse],$_POST[zusatzinfo]
WHERE Hersteller='$zeile[0]', Schleppertyp='$zeile[1]', Baugruppe='$zeile[2]', Verwendungsstelle='$zeile[3]', Bezeichnung='$zeile[4]', Anzahl='$zeile[5]', Lagerart='$zeile[6]', Abmasse='$zeile[7]', Zusatzinfo='$zeile[8]')";
Fehlermeldung=You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ',,,,,,, WHERE Hersteller='', Schleppertyp='', Baugruppe='', Verwendungsstelle=''' at line 1
Geändert von drbestminus (22.03.2006 um 12:49:02 Uhr)
|
22.03.2006, 20:30:44
|
|
SELFPHP Guru
|
|
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
|
|
AW: sql Update prob
Zitat:
Zitat von drbestminus
Ich denke die WHERE ist nicht notwendig.
Es sollen ja auch alle überschrieben werden.
|
Komisches Konzept.
Zitat:
@Meikel
Verstehe nicht genau was du damit meinst?
|
Handbuch lesen.
Das geht deshalb nicht, weil es falsch ist.
UPDATE:
http://dev.mysql.com/doc/refman/4.0/de/update.html
Zeichenkatten:
http://dev.mysql.com/doc/refman/4.0/de/char.html
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Ähnliche Themen
|
Thema |
Autor |
Forum |
Antworten |
Letzter Beitrag |
Update
|
Soeren |
MySQLi/PDO/(MySQL) |
6 |
18.06.2005 11:12:46 |
update problem :(
|
Stifler |
PHP Grundlagen |
1 |
27.04.2004 13:28:35 |
Update Sql
|
osiris |
PHP für Fortgeschrittene und Experten |
2 |
19.05.2003 22:20:23 |
easy sql prob
|
CpUkiller |
PHP für Fortgeschrittene und Experten |
1 |
24.09.2002 13:25:00 |
Alle Zeitangaben in WEZ +2. Es ist jetzt 12:42:57 Uhr.
|