Shop-Hilfe.com
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 08.03.2005, 12:24   #1
TP-Senior
 
Benutzerbild von badeplatz
 
Registriert seit: Jul 2002
Ort: Allgäu
badeplatz macht alles soweit korrekt

Replace Into ? Geht nicht


Hallo,

ich habe eine Datensatz Seite. Dort möchte ich, dass die vorhandenden Daten überschrieben bzw ergänzt werden können und dass dann an die Datenbank geschickt wird.

Login unter: Login zur Seite
Benutzername: Gast
Passwort: Gast

Dann gelangt man zur Datenseite. Nach drück auf "Ändern" wird diese an die Seite aendern.php übergeben. Aber leider ohne erfolg.

Was ist falsch? MMhh

Hier der Code der aendern.php:

PHP-Code:
<?php session_start();
require_once(
"db_connect.inc.php");
?>
<?
if ($_POST["quelle"] == "aendern")
{
    
$sql "REPLACE INTO `hotel` ( `id` , `hotelname` , `hotelslogan` , `hotellage2` , `hoteltext` , `ausstattung` , `extras` , `preiseez` , `preisedz` , `strasse` , `plz` , `ort` , `bundesland` ,`letzteAenderung`, `info1` , `info2` , `info3` , `info4` , `info5` , `usp` ,`usp2` , angebote` , `va` , `kategorie` , `standart` , `qualitaet` , ) ";
    
$sql.= "VALUES ('', '".$_SESSION["id"]."', '".$_POST["hotelname"]."', '".$_POST["hotelslogan"]."', '".$_POST["hotellage2"]."', '".$_POST["hoteltext"]."', '".$_POST["ausstattung"]."', '".$_POST["extras"]."', '".$_POST["preiseez"]."', '".$_POST["preisedz"]."', '".$_POST["strasse"]."', '".$_POST["plz"]."', '".$_POST["ort"]."', '".$_POST["bundesland"]."', NOW( ), '".$_POST["info1"]."', '".$_POST["info2"]."', '".$_POST["info3"]."', '".$_POST["info4"]."', '".$_POST["info5"]."', '".$_POST["usp"]."', '".$_POST["usp2"]."', '".$_POST["angebote"]."', '".$_POST["va"]."', '".$_POST["kategorie"]."', '".$_POST["standart"]."', '".$_POST["qualitaet"]."',)";
    
//echo $sql;
    
mysql_query($sql$db);
    require_once(
"eingetragen.htm");
}
?>
Gerne sende ich auch die Seite an "PM".

DANKE für die Hilfe

Thomas
badeplatz ist offline   Mit Zitat antworten


Alt 08.03.2005, 12:36   #2
TP-Special Mod
 
Benutzerbild von webmichl
 
Registriert seit: Jun 2001
Ort: 8°21' O 49°1' N
webmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine Userwebmichl lebt für das TP und seine User
Ich kann wiederum nur für Oracle-SQL sprechen, und da gehts so:

update DATENBANK set FELD = WERT where
BEDINGUNG

evtl hilfts Dir ja...

webmichl ist offline   Mit Zitat antworten
Alt 08.03.2005, 12:44   #3
TP-Special Mod
 
Benutzerbild von steffenk
 
Registriert seit: Feb 2005
Ort: Haan / NRW
steffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine User
Auszug aus der Doku von MySQL:

REPLACE works exactly like INSERT, except that if an old record in the table has the same value as a new record for a PRIMARY KEY or a UNIQUE index, the old record is deleted before the new record is inserted. See Section 13.1.4, “INSERT Syntax”.

Note that unless the table has a PRIMARY KEY or UNIQUE index, using a REPLACE statement makes no sense. It becomes equivalent to INSERT, because there is no index to be used to determine whether a new row duplicates another.

Ich würde in jedem Fall mit Update arbeiten.
__________________

Typo3 · MySQLDumper · dislabs
·
manche Mühlen mahlen schneller ...
"Ich habe Rücken"
Horst Schlämmer
steffenk ist offline   Mit Zitat antworten
Alt 08.03.2005, 12:50   #4
TP-Senior
 
Benutzerbild von badeplatz
 
Registriert seit: Jul 2002
Ort: Allgäu
badeplatz macht alles soweit korrekt
Hallo,

mit Update oder auch Replace habe ich bis dato nicht gearbeitet. Könnte mir bitte jemand sagen wie vielleicht es mit Update heissen würde der Code?

DANKE

Thomas
badeplatz ist offline   Mit Zitat antworten
Alt 08.03.2005, 12:59   #5
TP-Junior
 
Registriert seit: Nov 2004
candul macht alles soweit korrekt
Hi
Schau mal, da ist UPDATE erklärt
http://www-user.tu-chemnitz.de/~dgr/...inf/teil2.html

Aber was ich ansonsten nicht verstehe: Von wo kommt "quelle" in $_POST["quelle"]?
candul ist offline   Mit Zitat antworten
Alt 08.03.2005, 13:26   #6
TP-Senior
 
Benutzerbild von badeplatz
 
Registriert seit: Jul 2002
Ort: Allgäu
badeplatz macht alles soweit korrekt
Hat keiner einen Rat. Es geht leider nicht.

Thomas
badeplatz ist offline   Mit Zitat antworten
Alt 08.03.2005, 13:34   #7
TP-Junior
 
Registriert seit: Nov 2004
candul macht alles soweit korrekt
Nochmal: Von wo kommt "quelle" in $_POST["quelle"]?

Ich sehe in Deinem form nirgends den namen "quelle". Wird die if-Anweisung überhaupt erfüllt?
candul ist offline   Mit Zitat antworten
Alt 08.03.2005, 13:58   #8
TP-Senior
 
Benutzerbild von badeplatz
 
Registriert seit: Jul 2002
Ort: Allgäu
badeplatz macht alles soweit korrekt
Hallo,

ja die stehen drinnen, war oben noch nicht drinnen. Jetzt sind Sie eingetragen.

habe die Daten so abgeändert:

PHP-Code:
<?php 
$db 
mysql_connect("localhost","xxx","xxx");
mysql_select_db("xxxx",$db); 
?>
<?
if ($_POST["quelle"] = "aendern")
{
    
$sql "REPLACE INTO `hotel` (`id` ,`hotelname` , `hotelslogan` , `hotellage2` , `hoteltext` , `ausstattung` , `extras` , `preiseez` , `preisedz` , `strasse` , `plz` , `ort` , `bundesland` ,`letzteAenderung`, `info1` , `info2` , `info3` , `info4` , `info5` , `usp` ,`usp2` , angebote` , `va` , `kategorie` , `standart` , `qualitaet`) ";
    
$sql.= "VALUES ('', '".$_POST["hotelname"]."', '".$_POST["hotelslogan"]."', '".$_POST["hotellage2"]."', '".$_POST["hoteltext"]."', '".$_POST["ausstattung"]."', '".$_POST["extras"]."', '".$_POST["preiseez"]."', '".$_POST["preisedz"]."', '".$_POST["strasse"]."', '".$_POST["plz"]."', '".$_POST["ort"]."', '".$_POST["bundesland"]."', NOW( ), '".$_POST["info1"]."', '".$_POST["info2"]."', '".$_POST["info3"]."', '".$_POST["info4"]."', '".$_POST["info5"]."', '".$_POST["usp"]."', '".$_POST["usp2"]."', '".$_POST["angebote"]."', '".$_POST["va"]."', '".$_POST["kategorie"]."', '".$_POST["standart"]."', '".$_POST["qualitaet"]."')";
    echo 
$sql;
    
mysql_query($sql$db);
    require_once(
"eingetragen.htm");
}
?>
Er sagt auch die Bestätigung am Ende. Aber er ändert nichts ?

GRR.

Danke

Thomas
badeplatz ist offline   Mit Zitat antworten
Alt 08.03.2005, 14:14   #9
TP-Junior
 
Registriert seit: Nov 2004
candul macht alles soweit korrekt
Hast Du's denn jetzt mal versucht mit UPDATE?

Bei UPDATE muss der Tabellenname, in Deinem Fall hotel, nicht in Anführungszeichen stehen. Wie das bei REPLACE INTO ist, weiss ich nicht. Ich benutze jeweils UPDATE.
candul ist offline   Mit Zitat antworten
Alt 08.03.2005, 14:38   #10
TP-Special Mod
 
Benutzerbild von steffenk
 
Registriert seit: Feb 2005
Ort: Haan / NRW
steffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine User
Zitat:
Zitat von candul
Bei UPDATE muss der Tabellenname, in Deinem Fall hotel, nicht in Anführungszeichen stehen. Wie das bei REPLACE INTO ist, weiss ich nicht. Ich benutze jeweils UPDATE.
Das stimmt nicht. MySQL-Konvention schreibt vor, Alle Namen (DB,Tabellen und Felder) in Hochticks (`) zu schreiben. Man sollte sich das angewöhnen, da es sonst zu Fehlern kommen könnte (Beispiel reservierte Wörter)
__________________

Typo3 · MySQLDumper · dislabs
·
manche Mühlen mahlen schneller ...
"Ich habe Rücken"
Horst Schlämmer
steffenk ist offline   Mit Zitat antworten
Alt 08.03.2005, 14:49   #11
TP-Junior
 
Registriert seit: Nov 2004
candul macht alles soweit korrekt
Aha, gut zu wissen :-) Bei mir hat's bis jetzt immer funktioniert, weil ich keine reservierten Wörter als Tabellen- oder Feldnamen benutze. Ich werd's mir angewöhnen ;-) Thx!
candul ist offline   Mit Zitat antworten
Alt 08.03.2005, 15:23   #12
TP-Senior
 
Benutzerbild von badeplatz
 
Registriert seit: Jul 2002
Ort: Allgäu
badeplatz macht alles soweit korrekt
Hallo,

habe es auch mit Update probiert aber kein Erfolg.

Zur Seite
Benutzername: Gast
Passwort: Gast

Ich probiere und probiere....

Danke für die rege Hilfe bis jetzt.


PHP-Code:
    $sql "UPDATE hotel (`id`, `hotelname`, `hotelslogan`, `hotellage2`, `hoteltext`, `ausstattung`, `extras`, `preiseez`, `preisedz`, `strasse`, `plz`, `ort`, `bundesland`, `letzteAenderung`, `info1`, `info2`, `info3`, `info4`  `info5`, `usp`,`usp2`, angebote`, `va`, `kategorie`, `standart`, `qualitaet`) ";
    
$sql.= "VALUES ('".$_SESSION["id"]."', '".$_POST["hotelname"]."', '".$_POST["hotelslogan"]."', '".$_POST["hotellage2"]."', '".$_POST["hoteltext"]."', '".$_POST["ausstattung"]."', '".$_POST["extras"]."', '".$_POST["preiseez"]."', '".$_POST["preisedz"]."', '".$_POST["strasse"]."', '".$_POST["plz"]."', '".$_POST["ort"]."', '".$_POST["bundesland"]."', NOW( ), '".$_POST["info1"]."', '".$_POST["info2"]."', '".$_POST["info3"]."', '".$_POST["info4"]."', '".$_POST["info5"]."', '".$_POST["usp"]."', '".$_POST["usp2"]."', '".$_POST["angebote"]."', '".$_POST["va"]."', '".$_POST["kategorie"]."', '".$_POST["standart"]."', '".$_POST["qualitaet"]."')";
    echo 
$sql;
    
mysql_query($sql$db);
    require_once(
"eingetragen.htm"); 
badeplatz ist offline   Mit Zitat antworten
Alt 08.03.2005, 15:59   #13
TP-Junior
 
Registriert seit: Nov 2004
candul macht alles soweit korrekt
Aber warum denn nicht so ähnlich, wie es in dem von mir geposteten Link beschrieben ist?

$sql = "UPDATE 'hotel' SET hotelname=\"" . $_POST['hotelname']. "\", hotelslogan=\"" . $_POST['hotelslogan'] . "\")";
candul ist offline   Mit Zitat antworten
Alt 08.03.2005, 16:06   #14
TP-Special Mod
 
Benutzerbild von steffenk
 
Registriert seit: Feb 2005
Ort: Haan / NRW
steffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine User
warum nich mysql fragen ???

mysql_query($sql, $db) || die(mysql_error());
__________________

Typo3 · MySQLDumper · dislabs
·
manche Mühlen mahlen schneller ...
"Ich habe Rücken"
Horst Schlämmer
steffenk ist offline   Mit Zitat antworten
Alt 08.03.2005, 16:19   #15
TP-Senior
 
Benutzerbild von badeplatz
 
Registriert seit: Jul 2002
Ort: Allgäu
badeplatz macht alles soweit korrekt
Zitat:
Zitat von St@eff.en
warum nich mysql fragen ???

mysql_query($sql, $db) || die(mysql_error());

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 '(`id`, `hotelname`, `hotelslogan`, `hotellage2`, `hoteltext`, `

Ich ändere es mal so um wie von CANDUL beschrieben.

Thomas
badeplatz ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik
Replace Into ? Geht nicht Replace Into ? Geht nicht
« Online - Offline Anzeige? | Array-Problem »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
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