Zwei Datenbank aufrufe zu einem Code verknüpfen wie?

  • Da ich bis jetzt auf diesem Guten Forum immer erfolgreich war, erläutere ich mal mein nächstes Problem. Das Problem ist folgendes. Wie immer interessant zumindest für mich ;). Also:

    Datenbankabfrage 1:


    PHP
    <?php $comments = $wpdb->get_results("SELECT comment_post_ID, comment_author, comment_author_email, comment_content, comment_date
      FROM $wpdb->comments
      WHERE comment_type = ''
      && comment_approved = '1'
      ORDER BY comment_date
      DESC LIMIT 10");?>


    Datenbankabfrage 2:

    PHP
    <?php
    $usernames = $wpdb->get_results("SELECT user_nicename, user_url, ID FROM $wpdb->users ORDER BY ID DESC LIMIT 10");


    Bei der 2. Datenbankabfrage sind Kriterien wie ORDER oder sonstiges egal es muss nur dieser code funktionieren. Die Verknüpfung der beiden Datenbanken ist dafür gedacht weil vor dem zu die User_id des benutzers angezeigt werden soll:


    PHP
    <?php $commenttype = 'even';
    
    
    foreach($comments as $comment; $usernames as $username) {
      $post = get_postdata($comment->comment_post_ID); ?>
    
    
      <li class="<?php echo $commenttype; ?>">
        <?php comment_date('j F Y') ?> @ <?php comment_time() ?> <?php echo $username->ID; ?> zu <a href="<?php echo get_permalink($post['ID']); ?>" title="<?php echo $comment->comment_author; ?> yorumunu görüntüle...">
          <?php echo $post['Title']; ?></a>


    Bei der "foreach" Angabe im letzten php code, bin ich mir nicht sicher, ob das so richtig ist! Also mit dem Semikolon getrennt die beiden ($) Variablen. Wie immer Wordpress wie kann ich das hinbekommen. Habe leider mit php neu angefangen, deshalb weis ich nicht wie man Datenbanken verknüpft. Kann es mir jemand zeigen?

  • 1. Also nein eine solche Foreach gibt es nicht

    2. Mach bitte mal ein PHP/SQL Tutorium

    3. bei deinen beispiel muss du eine Foreach in die andere packen und via User id verknüpfen, das ist aber so nicht gut für die Performance, ein SQL Join wäre da viel besser gelöst, in dem du per leftjoin die user zu den Comment Joinst.... aber das nun zu erklären , machen wäre zu viel , deswegen bitte ich dich lerne erstmal php/sql und dann schau dir joins an

    4. Für was soll das sein , was soll das Ergebniss sein?


    mfg

  • Hmm Php/SQL wenn ich Ahnung hätte gerne:D
    Also der Grund ist, dass ich durch die erzeugte User-ID wieder einen link zu jedem Benutzer individuell darstellen kann.

    Code
    <a href="?author='.$username->ID.'">'.$comment->comment_author."</a>

    dadurch kann man dann von den Letzten 10 Comments die mit diesem Code hier ausgegeben werden:


    ...direkt in die jeweiligen Benutzerprofile hinein. Der Grund wieso ich das versuche so hinzubekommen ist. Wie du siehst ist bei diesem code hier statt einen Link nur der <?php echo $comment->comment_author; ?> vor dem zu vertreten.

    Ich hoffe ich konnte das Verständlich erklärn!!

    Jetzt schon mal vielen dank für die mühe den Code zu analysieren. Weil das ist auch schon eine andere Sache...

    mfg musti1989

  • hm würde ich wissen was du willst kann ich dir vllt helfen aber so weis ich es echt nicht

    Sag doch mal was du willst und wie die 2 Codes aussehen


    mfg

  • Hier kannste es dir ja ansehn:

    http://kalitelidizi.net.tc/ auf der sitebar rechts unter der Überschrift:
    En Son Yorumlar


    Habe schon ein paar Test comments gemacht. Datum und Uhrzeit passt brauche nur noch den link in die jeweiligen Profil konstruktionen. Ach stimmt ja vielleicht weist du nicht, dass bei wordpress die verschiedenen userprofile oder auch Authorenprofile genannt jeweils so aufgerufen werden <code><a href="http://beispiel.de/?author=1">Profil Ansehn</a></code>
    Jeder User hat eine ID und hier ist die "1" natürlich die ID des Admins. Und die <code>?author=</code> konstruktion öffnet die jeweilige author.php, wie gesagt ich brauch halt deshalb diese User_id dort, damit die Mitglieder bei den letzten Kommentaren von dem Kommentator namen aus direkt in das jeweilige Profil des Kommentators gelangen können. Jetzt verständlich?

    nach der Uhrzeit auf der Webseite DER WERT ist halt dieses

    PHP
    <?php echo $comment->comment_author; ?>

    und dies muss ich zu diesem hier ändern [code=php]<a href="?author='.$username->ID.'">'.$comment->comment_author."</a>[code=php]

    3 Mal editiert, zuletzt von musti1989 (10. Mai 2009 um 21:25)

  • Du willst quasi wenn man auf admin klickt in admin sein profil kommt also bei der box "En Son Yorumlar

    "


    :D

  • Schau mal in die DB wird den zu den Comment wirklich nicht die USER ID gespeichert , wirklich nur der name?


    mfg

  • hmm hmm...ich hab es hinbekommen^^ man lernt echt viel dazu...wär mir vorher eingefallen das ich einfach in die comment datenbank mit dem myphpadmin reinsehn kann was es für sachen in der daten bank gibt müsste ich nicht hier solange schreiben aba hatt geklappt sieht es auch an hatt sich auf jedenfall gelohnt vielen dank Pion...bist der beste ;)


    JETZT FEHLT NUR NOCH EINS DANN IST ALLES FERTIG^^