Seite 1 von 4 1234 LetzteLetzte
Ergebnis 1 bis 10 von 33

Thema: Eintragung mit session-id funktioniert nicht.

  1. #1
    Meister(in)
    Registriert seit
    29.11.2004
    Beiträge
    277
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard Eintragung mit session-id funktioniert nicht.

    Hallo,
    nach langer Zeit wollte ich mal wieder eine Homepage starten.
    Jetzt hab' ich irgendwie ein Totalcrash in meinem Kopf erlitten, und es klappt nichts mehr.
    Also, wenn man ein Bild hochgeladen hat, bekommt man einen Link. Den link soll man per Formular in die Datenbank schicken. Damit der Server weiß, von wem der link kommt, habe ich noch where id = $_SESSION user_id eingebaut.
    Mein Problem ist aber viel einfacher. Er will den Link einfach nicht eintragen.
    Hier mein Formular:
    Code:
    <form action="meinebilder.php">
    Link&#58; 
    <input name="bilder" type="text">
    		<input type="submit" name="submit" value="Absenden" class="button">
    		</form>
    Und hier die meinebilder.php
    Code:
    <?session_start&#40;&#41;;?>
    <? include&#40;'config.php'&#41;; ?>
    <?php
    @mysql_connect&#40;MYSQL_HOST, MYSQL_USER, MYSQL_PASS&#41; OR die&#40;mysql_error&#40;&#41;&#41;;
        mysql_select_db&#40;MYSQL_DATABASE&#41; OR die&#40;mysql_error&#40;&#41;&#41;;
        
        $url = $_POST&#91;"bilder"&#93;;  
    
     $sql = "
     INSERT INTO
    `benutzerdaten`
    &#40;
    `bilder`
    &#41;
    VALUES
    &#40;
    '$url'
    &#41;
    WHERE
    &#40; id = '".$_SESSION&#91;"user_id"&#93;."'&#41;
    ";
    
    if &#40;mysql_query&#40;$sql&#41; &#41;
    &#123;
    echo "Dein Eintrag wurde erfolgreich eingetragen";
    &#125;
    else
    &#123;
    echo "Bei deinem Eintrag ist ein Fehler aufgetreten";
    &#125;
    
    ?>
    Die Spalte in der tabelle benutzerdaten heißt bilder, das ist richtig.

    Der fehler lautet wie folgt:
    Notice: Undefined index: bilder in C:\Programme\xampp\htdocs\bild\meinebilder.php on line 7
    Line 7. ist halt das hier:
    Code:
        $url = $_POST&#91;"bilder"&#93;;
    Ich hoffe ihr koennt mir da weiterhelfen..


    Falls ich irgendein dummen Fehler gemacht hab', verzeiht mir bitte!

    Vielen dank schonmal, sibbi


    EDIT://
    Evlt sollte ich noch die URL die beim Fehler angezeigt wird mitschicken, die kommt mir naemlich auch spanisch vor:
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Gast

    Standard

    mach oben mal error_reporting(0)

    oder einfach nur wie folgt

    Code:
    $sql = " 
    INSERT INTO 
    `benutzerdaten` 
    &#40; 
    `bilder` 
    &#41; 
    VALUES 
    &#40; 
    '$_POST&#91;"bilder"&#93;' 
    &#41; 
    WHERE 
    &#40; id = '".$_SESSION&#91;"user_id"&#93;."'&#41; 
    ";
    und die Zeile hier weglassen

    Code:
    $url = $_POST&#91;"bilder"&#93;;

  3. #3
    Forum Guru
    Registriert seit
    04.04.2005
    Beiträge
    4.139
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Als info nebenbei.

    Du musst nicht für jeden Befehl <? ?> auf und wieder zumachen.
    Demnach würde deine «meinebilder.php» so aussehen ->

    Code:
    <?php 
    session_start&#40;&#41;;
    include&#40;'config.php'&#41;;
    
    @mysql_connect&#40;MYSQL_HOST, MYSQL_USER, MYSQL_PASS&#41; OR die&#40;mysql_error&#40;&#41;&#41;;
        mysql_select_db&#40;MYSQL_DATABASE&#41; OR die&#40;mysql_error&#40;&#41;&#41;;
       
    $url = $_POST&#91;"bilder"&#93;; 
    $userid = $_SESSION&#91;'user_id'&#93;;
    
    $sql = "INSERT INTO `benutzerdaten` &#40; `bilder` &#41; VALUES &#40; '$url' &#41; WHERE &#40; id = ".userid."&#41;";
    
    if &#40;mysql_query&#40;$sql&#41; &#41;
    &#123;
    echo "Dein Eintrag wurde erfolgreich eingetragen";
    &#125; else &#123;
    echo "Bei deinem Eintrag ist ein Fehler aufgetreten";
    &#125;
    
    ?>
    Ich habe noch einige andere Änderungen vorgenommen.
    Facebook Gruppe: Böses Encoding

  4. #4
    Meister(in)
    Themenstarter

    Registriert seit
    29.11.2004
    Beiträge
    277
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Danke @ gast, und auch Danke @ :RMB:

    Das mit den < > weiß ich, aber meistens bau ich noch HTML-tags darein, und dann ist es einfacher anstatt die in's echo zu schreiben.
    Was mir ueber nacht eingefallen ist: Ich schreibe ja die Links in eine exestierende Spalte, muesste ich die spalte von dem User dann nicht eigentlich Updaten? Oder schreibt er es dann trotzdem da rein?

    Kleines beispiel: Es gibt 1 User bis jetzt, den "Admin".
    Der Admin hat bis jetzt noch kein Bild eingetragen. Also ist die Spalte `bilder` auf NULL. Da will er jetzt aber verschiedene Links eintragen, die auch immer Fortlaufend sind. Also nicht das er den 1. Link immer ueberschreibt, wenn er einen 2. Einfuegt.

    Ich hoffe ihr versteht mich..

    MFG



    EDIT://
    :RMB: ich habe mal dein Code uebernommen. (war es absicht das vor .user_id. kein $ kommt? Ich hab' es mal ergaezt.)
    Auf jedenfall kommt der gleiche Fehler.. :-\

  5. #5
    Forum Guru
    Registriert seit
    13.01.2005
    Ort
    Schweiz
    Beiträge
    5.240
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    wenn du das so willst und es mal mehr als 1 user geben wird dann mach eine tabelle `user` und eine tabelle `links`. in der `links` tabelle hast du dann eine spalte `user_nr`. in dieser spalte kommt die jeweilige user_id rein von der tabelle `user`.

    beispiel

    Code:
    ---------------------   |   -------------------------------
    Tabelle&#58; user           |   Tabelle&#58; links
    ---------------------   |   -------------------------------
    user_id  | username     |   user_nr | bildirgendwas
    ---------------------   |   -------------------------------
    1          admin        |   1         blabla.jpg
    2          hans         |   1         soso_1.jpg
                            |   1         bilder_8.jpg
                            |   2         bildbild.jpg
                            |   2         oh_la_la.jpg
                            |
    mehr dazu auf wikipedia: referenzielle integrität

    dass sich die links nicht überschreiben musst du logischerweise INSERT nehmen, denn INSERT fügt einen neuen datensatz ein, UPDATE ergänzt einen bestehenden.

    alles klar?

  6. #6
    Meister(in)
    Themenstarter

    Registriert seit
    29.11.2004
    Beiträge
    277
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Oh, vielen vielen dank @ Phore.
    Also speicher ich bei user_nr einfach die user-id (die session-id) mit rein, und les' sie dann auch mit der Userid wieder aus, oder?
    Koennte ich nicht auch den User-namen einspeichern? Den Gibts ja auch nur 1.
    Ich versuche es ersteinmal, wenn ich noch eine Frage hab', hoffe ich hier ein offenes Ohr zu finden!

    Vielen vielen dank!

  7. #7
    Forum Guru
    Registriert seit
    13.01.2005
    Ort
    Schweiz
    Beiträge
    5.240
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    ja du kannst da dann über die session_id speichern und auslesen.
    beim auslesen wirst du zudem sql joins anschauen müssen.

    wenn es den usernamen wirklich nur 1mal geben wird kannst du das theoretisch schon, würde aber trotzdem alles über eine id machen. evtl. machst du später was über GET, hast umlaute in den benutzernamen, hast mehrere tabellen usw. - dann wirds unpraktisch.
    gewöhn dich an die id's wird immer so sein

    so long

  8. #8
    Meister(in)
    Themenstarter

    Registriert seit
    29.11.2004
    Beiträge
    277
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Okay, mach ich es mit id's!

    Also ich glaub' ich bin einfach bloed. Was mache ich falsch?
    Ich kann einach nichts mehr in die Datenbank eintragen, er sagt immer:
    Notice: Undefined index: user in C:\Programme\xampp\htdocs\bild\meinebilder.php on line 19

    Notice: Undefined index: link in C:\Programme\xampp\htdocs\bild\meinebilder.php on line 20
    line 19/20
    Code:
    '&#123;$_POST&#91;'user'&#93;&#125;'
    '&#123;$_POST&#91;'link'&#93;&#125;'
    Damit ich das wieder richtig verstehe, man hat ein Formular, bei name="name" muss der name stehn, wie er auch in der datenbank steht, richtig?
    Also z.b. name="link". Das schickt man dann eine Datei. Unter VALUES
    stehen dann die Werte, also z.b.
    Code:
    '&#123;$_POST&#91;'link'&#93;&#125;'
    So habe ich das, aber er sagt wieder den oben genannten Fehler (beim Versuch in die Tabelle LINKS einzutragen. Hier mal die komplette Datei
    Code:
    <?php
    session_start&#40;&#41;;
    include&#40;'config.php'&#41;;
    
    @mysql_connect&#40;MYSQL_HOST, MYSQL_USER, MYSQL_PASS&#41; OR die&#40;mysql_error&#40;&#41;&#41;;
        mysql_select_db&#40;MYSQL_DATABASE&#41; OR die&#40;mysql_error&#40;&#41;&#41;;
       
    
     $sql = "
     INSERT INTO
    `links`
    &#40;
    `user`,
    `link`,
    `datum`
    &#41;
    VALUES
    &#40;
    '&#123;$_POST&#91;'user'&#93;&#125;',
    '&#123;$_POST&#91;'link'&#93;&#125;',
    NOW&#40;&#41;
    
    &#41;
    ";
    
    if &#40;mysql_query&#40;$sql&#41; &#41;
    &#123;
    echo "Dein Eintrag wurde erfolgreich eingetragen";
    &#125; else &#123;
    echo "Bei deinem Eintrag ist ein Fehler aufgetreten";
    &#125;
    
    ?>
    ich find' den verflixten Fehler einfach nicht.,. :-\

    Bei dem Code traegt er einfach nur das Datum ein. Mehr nicht.

  9. #9
    Meister(in)
    Themenstarter

    Registriert seit
    29.11.2004
    Beiträge
    277
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Oh oh oh, das ist Peinlich.. :-\
    Ich hab' im Formular
    method="post"
    vergessen, folglich hat er's ueber get gemacht, aber ich hab' die wieder mit POST ausgelesen. Dann kann es ja auch nicht klappen..
    Tschuldigung an alle, und vielen dank an Phore, fuer den guten tip!

  10. #10
    Meister(in)
    Themenstarter

    Registriert seit
    29.11.2004
    Beiträge
    277
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    So weit - So gut.
    Gibt es eine einfache Methode wie man die Bilder in Kategorien packen kann?
    Kennt jemand eine Anleitung dazu?
    Ich habe jetzt in die Tabelle wo auch die Links gespeichert werden einfach cat, cat1 und ca2 angelegt, das soll fuer 3 kategorien stehn. Da wo man acuh den Link eintraegt, hab' ich noch ein Select-feld gemach,t wo man die 3 kategorien auswaehlen kann. Jedoch klappt das irgenwdie nicht. Also es geht einfach GAR NICHTS!
    Ist der ansatz schon falsch?

Ähnliche Themen

  1. Banner of the month Eintragung!?!
    Von ShadoX im Forum Off Topic und Quasselbox
    Antworten: 87
    Letzter Beitrag: 26.04.2008, 00:59
  2. google eintragung
    Von im Forum Promotion - SEO - Suchmaschine (Google & Co) – Mitarbeiter & Linkpartnersuche
    Antworten: 2
    Letzter Beitrag: 22.10.2006, 20:47
  3. problem mit der eintragung von daten in Datenbank...
    Von Serkan im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 8
    Letzter Beitrag: 11.08.2006, 13:09
  4. Session Schutz läuft auf Rechner, aber auch Webserver nicht?
    Von Noob im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 11
    Letzter Beitrag: 17.07.2006, 19:25
  5. Antworten: 6
    Letzter Beitrag: 30.03.2005, 02:07

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •