Hi Kami,
so sollte es funktionieren:
test wird nicht von Hochkommata umschlossen sondern von Backticks.PHP-Code:INSERT INTO `test` (tname) VALUES ('Namen_xxx')
Hallo Forum,
folgende Tabelle habe ich erstellt:
Danach habe ich folgenden SQL-Befehl versucht einzugeben:PHP-Code:-- phpMyAdmin SQL Dump
-- version 3.2.4
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Erstellungszeit: 04. April 2011 um 13:01
-- Server Version: 5.1.41
-- PHP-Version: 5.3.1
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
CREATE TABLE IF NOT EXISTS `test` (
`id` int(6) NOT NULL AUTO_INCREMENT,
`tname` varchar(50) COLLATE latin1_german2_ci DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `id` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_german2_ci AUTO_INCREMENT=1 ;
Bei diesem SQL bekomme ich folgende Fehlermeldung:PHP-Code:INSERT INTO 'test'( 'tname' ) VALUES ('Namen_xxx');
Seit zwei Tagen versuche ich mit Google diesen Fehler einzugrenzen. Leider ohne Erfolg.PHP-Code:#1064 - 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 ''test'( 'tname' ) VALUES ('Namen_xxx')' at line 1
In einem Tutorial habe ich folgendes gefunden:
Was habe ich dabei nicht verstanden?Die Syntax für die entsprechende Funktion sieht folgendermaßen aus:
INSERT INTO "Tabellen_Name" ("Spalte1", "Spalte2", ...)
VALUES ("Wert1", "Wert2", ...)
Hi Kami,
so sollte es funktionieren:
test wird nicht von Hochkommata umschlossen sondern von Backticks.PHP-Code:INSERT INTO `test` (tname) VALUES ('Namen_xxx')
Hallo max.m,
vielen Dank. Es hat geklappt. Das der Name der Tabelle in Backticks und die Spalten der Tabelle nicht umschlossen sind habe ich aber nirgends gefunden. Auch im Tutorial von phpBuddy ist das so nicht aufgeführt.
"INSERT INTO `traumprojekt`
(`vorname`, `geschlecht`, `alter`, `fuehrerschein`)
VALUES(
'" .mysql_real_escape_string( $vorname ). "',
'" .mysql_real_escape_string( $geschlecht ). "',
" .$alter. ",
" .$fuehrerschein. "
)";
Der Tabellenname ist hier auch mit Backticks umschloßen, die Spaltennamen kann man natürlich auch mit Backticks umschließen, aber eben beides nicht mit Hochkommata wie in Deinem Beispiel.
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)