1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

update probleme

  • illegaler
  • 2. November 2007 um 22:17
  • Unerledigt
  • illegaler
    6
    illegaler
    Mitglied
    Punkte
    325
    Beiträge
    59
    • 2. November 2007 um 22:17
    • #1

    ich hab ein problem und schon ewig daran gewerkelt es funktioniert einfach nicht...

    wir wollen auf unserer page einen lokalführer einbauen. Einfügen, löschen geht ganz normal, aber beim ändern passierts, dass zwar as query richtig ausgegeben wird, allerdings die db-einträge geleert werden und wir einfach nicht dahinterkommen warum.

    hier der lokalführer: http://www.bastarde.at/index.php?center=11
    zum testen (falls jemand lust dazu hat, derzeit haben wir noch keine beschränkungen): http://www.bastarde.at/index.php?center=11&neuesLokal=1

    und hier der update-code:

    Code
    $sql = "insert into lokale (LID, UID, Name, Inhaber, PLZ, Adresse, Ort, url, bpi, Beschreibung, logo, Foto1, Foto2, Bundesland, Staat, musik)".
        "VALUES ('', '".$userdata[user_id]."', '".ltrim(htmlentities($ndaten['name'], ENT_QUOTES, 'ISO8859-15'))."', '".ltrim(htmlentities($ndaten['inhaber'], ENT_QUOTES, 'ISO8859-15'))."',    ".
        "'".ltrim(htmlentities($ndaten['plz'], ENT_QUOTES, 'ISO8859-15'))."', '".ltrim(htmlentities($ndaten['Adresse'], ENT_QUOTES, 'ISO8859-15'))."', '".ltrim(htmlentities($ndaten['ort'], ENT_QUOTES, 'ISO8859-15'))."', ".
        "'".ltrim(htmlentities($ndaten['url'], ENT_QUOTES, 'ISO8859-15'))."', '".ltrim(htmlentities($ndaten['bpi'], ENT_QUOTES, 'ISO8859-15'))."', '".ltrim(htmlentities($ndaten['beschreibung'], ENT_QUOTES, 'ISO8859-15'))."', ".
        "'".$filename."', '".$fotoname."', '".ltrim(htmlentities($ndaten['foto2'], ENT_QUOTES, 'ISO8859-15'))."', ".
        "'".ltrim(htmlentities($ndaten['bundesland'], ENT_QUOTES, 'ISO8859-15'))."', '".ltrim(htmlentities($ndaten['staat'], ENT_QUOTES, 'ISO8859-15'))."', '".ltrim(htmlentities($ndaten['musik'], ENT_QUOTES, 'ISO8859-15'))."')";
     $result = $db->sql_query($sql);

    und hier die ausgabe des queries:
    UPDATE lokale SET Name = '12343', Inhaber = '', PLZ = '', Adresse = '', Ort = 'asdf', url = '', bpi = '12', Beschreibung = 'asdfg', logo = '', foto1 = '', Bundesland = '', Staat = ', musik = '' WHERE LID ='118'

    http://www.haus-thomas.at/

  • illegaler
    6
    illegaler
    Mitglied
    Punkte
    325
    Beiträge
    59
    • 5. November 2007 um 19:40
    • #2

    gibts des dass noch niemand so ein problem hatte?

    http://www.haus-thomas.at/

  • Florian
    4
    Florian
    Mitglied
    Punkte
    165
    Beiträge
    33
    • 5. November 2007 um 21:20
    • #3

    Hmm, was hat das Insert-Statement direkt mit dem Update zu tun?

    Aber was mir sofort aufgefallen ist:

    Zitat

    Staat = ', musik = '' WHERE LID ='118'


    Nach dem Staat findet sich nur ein '... :winking_face:

  • illegaler
    6
    illegaler
    Mitglied
    Punkte
    325
    Beiträge
    59
    • 6. November 2007 um 14:07
    • #4

    da hast du recht, hab das falsche rauskopiert (das insert geht ja) (das mit den htmlentities hab ich der übersichtlichkeit halber mal weggelassen)

    Code
    $sql = "UPDATE lokale SET Name = '". $daten[name] ."', Inhaber = '". $daten[inhaber] ."', ".
            "PLZ = '". $daten[plz] ."', Adresse = '". $daten[Adresse] ."', Ort = '". $daten[ort] ."', ".
            "url = '". $daten[url] ."', bpi = '". $daten[bpi] ."', Beschreibung = '". $daten[beschreibung] ."', ".
            "logo = '". $daten[logo] ."', foto1 = '". $daten[foto1] ."', Bundesland = '". $daten[bundesland] ."', ".
            "Staat = '". $daten[staat] ."', Musik = '". $daten[musik]."' WHERE LID ='".$daten[loid]."'";

    @staat: an dem liegts nicht, das hab ich wahrscheinlich nur schlampig kopiert

    das ganz eigenartige habe ich noch gar nicht geschrieben...
    wenn ich einen eintrag ändere ist er zuerst da, aktualisiere ich ist es weg
    wenn ich aber im browser zurück gehe und nochmals speichere funktionierts (und von da an funktionierts immer)
    (ich hoff das ist nachvollziehbar erklärt)

    http://www.haus-thomas.at/

  • Reinhard Seiler
    2
    Reinhard Seiler
    Mitglied
    Punkte
    40
    Beiträge
    8
    • 6. November 2007 um 19:30
    • #5

    Ich habe 2 Vermutungen:
    - du führst beim editieren unabsichtlich ein DELETE query aus.
    - du überschreibst eine ID mit der Eintrag nicht mehr aufgefunden werden kann.

    Denn es ist unmöglich einem UPDATE query einen Datensatz zu löschen.

    Was passiert, wenn du über phpmyadmin das statemant ausführst. Wenn da alles funktioniert, dann hast du an einer anderen Stelle im Code einen Fehler.


    Lg,
    Reinhard

  • illegaler
    6
    illegaler
    Mitglied
    Punkte
    325
    Beiträge
    59
    • 6. November 2007 um 19:34
    • #6

    es wird kein datensatz gelöscht. es werden alle daten mit "nix" ersetzt durch das update (bis auf die ID's)!
    udn wenn ich mein $sql per echo ausgebe und im myadmin ausführe läufts ganz normal

    http://www.haus-thomas.at/

  • illegaler
    6
    illegaler
    Mitglied
    Punkte
    325
    Beiträge
    59
    • 8. November 2007 um 18:44
    • #7

    alle aufgegeben? zu komplex? zu trivial?

    http://www.haus-thomas.at/

  • Maximilian Rupp 27. Dezember 2024 um 12:04

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Rechtliches

Impressum

Datenschutzerklärung