kostenloser Webspace werbefrei: lima-city


SQL Problem

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    your-destiny

    your-destiny hat kostenlosen Webspace.

    Hallo zusammen,

    ich habe ein Problem mit einer MYSQL Abfrage. Ich möchte bestimmte Felder einer Datenbank selektieren und ausgeben. ich benutze folgenden Code um die entsprechenden Felder zu selektieren:
    $nachname = mysql_query("SELECT `nachname` FROM members WHERE user = '$username' LIMIT 1 "); 
    $nachname2 = mysql_num_rows($nachname);
    
    $anrede = mysql_query("SELECT `anrede` FROM members WHERE user = '$username' LIMIT 1 "); 
    $anrede2 = mysql_num_rows($anrede);


    nun erhalte ich aber nicht die Anrede und den Nachnamen des Users sondern ich erhalte das Resultat:
    1
    1
    hier der Link zur Datei:
    http://your-destiny.lima-city.de/update.php

    ich hoffe einer kann helfen.

    Gruß
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. r**n

    Du gibst das ganze auch nicht aus, du zählst es.

    mysql_num_rows zählt die Anzahl der Ergebnisse der Query, und gibt nicht das angeforderte Objekt aus.

    Zur Ausgabe, siehe hier: http://www.php-einfach.de/einf_mysql_einfache_abfrage.php
  4. burgi

    Co-Admin Kostenloser Webspace von burgi

    burgi hat kostenlosen Webspace.

    Das Ergebnis, das du bekommst, ist auch vollkommen korrekt: du fragst mit mysql_num_rows, wieviele Datensätze das Ergebnis beinhaltet. Das Ergebnis ist 1.
    Du solltest aber eine geeignetere Funktion nutzen, um das Ergebnis selbst zu bekommen, beispielsweise:
    $result = mysql_fetch_object($nachname); //beinhaltet nun die gewünschte Zeile aus der Datenbank
    $nachname2 = $result->nachname;
    $anrede2 = $result->anrede;

    Siehe dazu auch: http://www.php.net/manual/de/function.mysql-fetch-object.php
    Im Übrigen solltest du beachten, dass bei einer Abfrage auch mehr als nur ein einziges, zutreffendes Ergebnis zurückgegeben werden können ;-)
  5. Zudem solltest du lieber mysqli verwenden, da mysql in der nächsten PHP Version nicht mehr unterstützt wird.
  6. Autor dieses Themas

    your-destiny

    your-destiny hat kostenlosen Webspace.

    Danke für eure schnellen antworten.
    jetzt funktioniert es.

    @all-in1
    reichr es aus, wenn ich einfach ein i bei allen Funktionen ranhänge oder muss ich auch die Funktionen ändern?

    Gruß
  7. Die Syntax ist ein wenig anders. Hier ist ein komplettes Manuel mit einigen Beispielen dabei http://www.php.net/manual/de/book.mysqli.php. Die Befehle sind ähnlich. Musst nur bei einigen Konstrukten besonders in Schleifen aufpassen, da funktioniert mysqli etwas anders als mysql.
  8. Autor dieses Themas

    your-destiny

    your-destiny hat kostenlosen Webspace.

    Danke! neuer Lesestoff für die nähsten Tage . . .

    Eine Frage noch: weist Du wie man in mail() auch umlaute (ä,ö,ü,ß) verwenden kann?

    Gruß
  9. Hier ist ein Zusammenspiel vieler Faktoren wichtig. Suche mal im Forum nach UTF-8, dann solltest du eigentlich alles wichtige finden.

    Ganz wichtig ist, dass du deinen Quellcode auch in dem Format abspeicherst, in dem du es auf der Webseite anzeigen lässt und der Server auch eingestellt ist. Benutzt du noch eine Datenbank muss auch dort die Kollation entsprechend richtig sein. Dem Server kannst du per .htaccess Datei sagen, ob er in ISO oder UTF-8 ausliefern soll.
  10. Autor dieses Themas

    your-destiny

    your-destiny hat kostenlosen Webspace.

    hallo,
    ich verwende den iso-Zeichensatz Auf der Webseite wird auch alles korekt angezeigt aber wenn ich eine Mail versende mit umlauten im Text werden diese nicht so angezeigt wie sie es sollten sondern so:
    ü ö ä


    die Webseiten Einstellungen harmonieren auch mit der Datenbank das ist kein Problem und wird auch korrekt in der mail angezeigt nur die umlaute, die ich als Text hinzufüge nicht.

    Gruß
  11. Die Datei ist auch in ISO abgespeichert?
    Der Server sendet auch in ISO?
    Und die Datenbank steht auf latin?
  12. Autor dieses Themas

    your-destiny

    your-destiny hat kostenlosen Webspace.

    die Datei verwendet ISO
    Kann ich nicht genau herausfinden gehe aber von ja aus weil es ein ubuntuserver (deutsch) ist
    ja

    Das Problem hat aber nichts mit der Datenbank zutun. Diese wird richtig ausgewertet und versendet. Beispiel:
    $betreff = "Passwort vergessen - Caching-with-web.org";
    $mailtext = "$anrede\nSie haben vor kurzem eine Passwortanfrage auf http://www.caching-with-web.org/ durchgefürt. Wir senden Ihnen nun ihr neues Passwort zu, das Sie in Ihrem Profil auf http://www.caching-with-web.org/members-page.php ändern können. \n\nIhr neuse Passwort lautet:\n\n$newpass \n\nSie können sich ab sofort mit diesem Passwort auf http://www.caching-with-web.org/ anmelden. \n\nSollten Sie keine Passwortanfrage gesendet haben bitten wir für die Unannehmlichkeiten um Entschuldigung.\n\n\nIhr Caching-with-web.org Team";
    $from = "From: accountsave@caching-with-web.org";
    mail ($email, $betreff, $mailtext, $from );

    ergiebt folgende Ausgabe per mail:
    Sehr geehrter Herr Fröhlich,
    Sie haben vor kurzem eine Passwortanfrage auf http://www.caching-with-web.org/ durchgefürt. Wir senden Ihnen nun ihr neues Passwort zu, das Sie in Ihrem Profil auf http://www.caching-with-web.org/members-page.php ändern können. 
    
    Ihr neuse Passwort lautet:
    
    A8jkW8K7 
    
    Sie können sich ab sofort mit diesem Passwort auf http://www.caching-with-web.org/ anmelden. 
    
    Sollten Sie keine Passwortanfrage gesendet haben bitten wir für die Unannehmlichkeiten um Entschuldigung.
    
    
    Ihr Caching-with-web.org Team

    man sieht die Datenbankabfrage wird korekt ausgewertet nur die Umlaute in dem Text nicht
  13. all-in1 schrieb:
    Zudem solltest du lieber mysqli verwenden, da mysql in der nächsten PHP Version nicht mehr unterstützt wird.

    Hast du dafür eine Quelle? Denn da kann ich beim besten Willen nichts drüber heraus finden.
    Bis PHP 5.7 (die sich momentan nur in einer sehr frühen Entwicklerversion befindet) ist die Unterstützung auf jeden Fall sicher gestellt, was durüber hinaus kommt, ist wohl eher Kaffeesatzlesen.
  14. burgi

    Co-Admin Kostenloser Webspace von burgi

    burgi hat kostenlosen Webspace.

    Hast du dafür eine Quelle? Denn da kann ich beim besten Willen nichts drüber heraus finden.
    Bis PHP 5.7 (die sich momentan nur in einer sehr frühen Entwicklerversion befindet) ist die Unterstützung auf jeden Fall sicher gestellt, was durüber hinaus kommt, ist wohl eher Kaffeesatzlesen.

    hier da?
    http://php.net/manual/en/migration55.deprecated.php
    Ich sehe das auch so, dass man bei Neuentwicklungen in jedem Fall auf mysqli setzen sollte, und nicht auf Funktionen, die bereits deprecated-Wanungen auswerfen...
  15. burgi schrieb:
    Hast du dafür eine Quelle? Denn da kann ich beim besten Willen nichts drüber heraus finden.
    Bis PHP 5.7 (die sich momentan nur in einer sehr frühen Entwicklerversion befindet) ist die Unterstützung auf jeden Fall sicher gestellt, was durüber hinaus kommt, ist wohl eher Kaffeesatzlesen.

    hier da?
    http://php.net/manual/en/migration55.deprecated.php
    Ich sehe das auch so, dass man bei Neuentwicklungen in jedem Fall auf mysqli setzen sollte, und nicht auf Funktionen, die bereits deprecated-Wanungen auswerfen...

    Als "nicht mehr unterstützt" würde ich verstehen, dass die Funktionen nicht mehr funktionieren. Deswegen war ich da gerade ein wenig überrascht.
    Aber ich stimme ganz und gar zu, dass man bei neuen Projekten eher auf MSQLi setzen sollte.
  16. Wo hast du denn die Textbausteine her?

    Kannst du die betreffenden Dateien mal als zip Datei irgendwo bereitstellen?

    @tct
    Ist es nicht so, dass depracated bedeutet, dass diese Funktionen in Zukunft wegfallen werden?
  17. Autor dieses Themas

    your-destiny

    your-destiny hat kostenlosen Webspace.

    ich habe auf http://your-destiny.lima-city.de/update.txt den code bereitgestellt. Der Hauptteil ist zwischen den **** - im Original sind jedoch die Umlaute geschrieben und nicht die zu sehenden zeichen
  18. Ich wollte die Datei im Original, und nicht den kopierten Code. Deine Emailadresse, falls die darin stehen sollte kannst du vorher löschen.

    Achso, falls die Datei irgendwo includiert wird, dann benötige ich auch die Datei.
  19. Autor dieses Themas

    your-destiny

    your-destiny hat kostenlosen Webspace.

    Achsoo...
    die Originaldatei kanst du dir unter http://www.testing.caching-with-web.org/download.php herunterladen. Es ist nicht der Komplette Teil sondern nur der Relewante (login, buttons, links etc. sowie die nebenspalten der Tabelle sind nicht enthalten) Dieser ist nehmlich ca 1500 zeilen lang und daran kann es nicht liegen
  20. all-in1 schrieb:
    @tct
    Ist es nicht so, dass depracated bedeutet, dass diese Funktionen in Zukunft wegfallen werden?

    Depracated heißt "veraltet", das bedeutet aber nicht, dass die Funktionen gleich in der nächsten PHP Version abgeschafft werden. Sollten Probleme mit den Funktionen auftreten oder es zu irgendwelchen Inkompatibiläten kommen, wird das nicht mehr ausgebessert werden und wahrscheinlich werden sie irgendwann dann auch wegfallen. [spekulation]
    Aber das würde ich nicht vor dem nächsten großen Versionsupdate (also PHP 6) erwarten und wann das kommt ist bisher unbekannt.
    [/spekulation]
    Aber man muss sich nur einmal überlegen, wieviele Skripte die Kombination PHP/MySQL verwenden, würde man den Support dafür von heute auf morgen einstellen, wäre der Aufschrei sicherlich groß.
  21. Da ich jetzt nach dem Download auch schon die Umlaute falsch dargestellt bekomme, versuche mal in die .htaccess folgendes hinein zu schreiben.

    AddDefaultCharset ISO-8859-1


    Ein anderer Fehler könnte sein, dass die Datei früher mal in UTF-8 gespeichert war und nachträglich nicht richtig in westeuropäisch konvertiert wurde.

  22. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!