einzelne datensäte "auslassen"

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • einzelne datensäte "auslassen"

    hallo zusammen,

    hab mal ne frage bzgl. php und sql ;o)

    also ich habe folgendes vor ...
    ich möchte mittels sqldb ein script in jede meiner seiten einbauen die links zu meinen anderen domains beinhalten.

    das problem hierbei ist das ich die "eigene" domain also die die aufgerufen wird von der abfrage ausschließen will.

    bisher hat die datenbank folgende felder:
    1) id
    2) link im html format also mit (a href="...........).

    gibt es irgendeine möglichkeit sowas zu realisieren?

    wäre nett, wenn mir da jemand mal weiterhelfen kann

    lg und danke schonmal
    jens

  • #2
    ja....

    gib alles normal aus, jedoch mit ner if-bedingung...überprüf, ob der string gleich ist wie $_SERVER["HTTP_HOST"]....wenn nicht, dann gibs aus...

    aber deine DB sollte nur die domains ohne HTML enthalten.
    tata
    moqui

    [COLOR=red]Ich will keine unaufgeforderten Mails über PHP Fragen. Es gibt ein Forum hier! Und ich bin nicht Scripter für jeden, der mir ne Mail schreibt![/COLOR]

    Kommentar


    • #3
      wenn dein problem der externe link ist, musst du die adresse mit "http://" anfangen.. beschreib das mal etwas genauer

      Kommentar


      • #4
        @moqui
        danke für die anregen werde mal versuchen ob ich das so hinbekomme (php newbee) ;o)

        das einzige prob was ich evtl sehe bei der lösung ohne den html kram ist das ich die links nicht oder nur schwer benennen kann oder gibt es anhand der id die möglichkeit das ich zb. folgendes mache:
        (a href="hier ausgabe des links mit der id xy")linkname der lt. der id hier sein soll (/a)

        oder evtl. noch ne weitere spalte machen die den namen enthält und dann einfach den html kram soweit "vorschreiben" das nur noch die angaben anhand der id eingefügt werden und das ganze mittels while schleife fortgesetzt wird bis ende ist?

        wobei das dann wiederum ne "ellenlange" tabelle mit nur einer spalte werden kann. mal sehen ob man das nicht in mehrere spalten dann aufteilen kann.

        @realmaker
        probs hab ich bisher noch gar keine da ich mir das ganze erst vor ein paar minuten überlegt habe und somit noch nicht genau weiß wie ich das am besten lösen kann.

        die frage von mir war erstmal nur rein "informativer" ob sowas überhaupt möglich ist einzelne inträge auszuschließen. wäre das nicht möglich würd ich gar nicht anfangen das ganze zusammen zu schreiben.

        lg
        jens

        Kommentar


        • #5
          PHP-Code:

          $res 
          mysql_query("select * id, link from tabelle");

          while(
          $row=mysql_fetch_array($res)) {

          echo 
          "<a href=\"{$row["link"]}\">{$row["id"]}</a><br>";


          passt die <a> kontruktion an deine erwartungen?
          tata
          moqui

          [COLOR=red]Ich will keine unaufgeforderten Mails über PHP Fragen. Es gibt ein Forum hier! Und ich bin nicht Scripter für jeden, der mir ne Mail schreibt![/COLOR]

          Kommentar


          • #6
            also ich habs jetzt derzeit so aufgebaut:

            PHP-Code:
            // Include der Zugangsdaten
            include("connect.php");

            $verbindung = @mysql_connect("$dbhost","$dbuser","$dbpass");
            if (!
            $verbindung)
            {
                echo 
            "Keine Verbindung möglich!";
                exit;
            }
            $abfrage "SELECT * FROM $tab";
            $erg MySQL_db_query($db,$abfrage,$verbindung);
            $num mysql_num_rows($erg);

            $domain =  $_SERVER["HTTP_HOST"];

            while (list(
            $id,$link,$name) = mysql_fetch_row($erg))
            {
                echo 
            "<a href=\"http://www.$link\" target=\"$target\">$name</a><br>";

            hab dazu die sql etwas angepasst hat jetzt
            id
            name und
            link ohne http kram.

            das haut ja soweit ohne probs hin jetzt. jetzt kommt der etwas schwieriegere teil ;o)

            die "mutter" domain "aussperren und das ganze etwas "schön" aussehen zu lassen. dachte da an eine z.b. 3 spaltige tabelle oder sowas.

            wenn ich eine tabelle innerhalb der while mache kommt in jeder tabellenzelle sozusagen das selbe ;o)

            jens

            Kommentar


            • #7
              so das mit auf mehrere spalten innerhalb hab ich jetzt dank dieses forums hinbekommen

              jetzt bräuchte ich nurnochmal einen kleinen denkanstoß für die sache mit der "eigenen domain" ausschließen geschichte.

              die datenbank hat jetzt wieder eine neue struktur da die tabellengeschichte nicht anders lösbar schien.

              die sql schaut jetzt folgendermaßen aus:
              1) id
              2) link (mit html kram)
              3) domainname inkl. endung wegen der $_SERVER["HTTP_HOST"].... geschichte.

              das gesammte script schaut so aus:

              PHP-Code:
              $domain $_SERVER["HTTP_HOST"];

              // Include der Zugangsdaten
              include("connect.php");

              $verbindung = @mysql_connect("$dbhost","$dbuser","$dbpass");
              if (!
              $verbindung)
              {
                  echo 
              "Keine Verbindung möglich!";
                  exit;
              }

              $abfrage "SELECT * FROM $tab";
              $erg MySQL_db_query($db,$abfrage,$verbindung);
              $num mysql_num_rows($erg);



              $i=0;
              while(
              $y=mysql_fetch_row($erg))

              $x[$i++]=$y[1];



              // wieviel haben wir denn ?
              $count count$x );
              // wiefiele spalten?
              $spalten 3;
              // macht so und so viel Zeilen
              $zeilen = ( $count $spalten )?( ( $count - ( $count $spalten ) ) / $spalten ):$count $spalten;

              // Tabelle zeilenweise ausgeben
              echo "<table border=0 width=750 cellpadding=1 cellspacing=1 bgcolor=#000000>\n";
              // Zeile für Zeile
              for( $i 0;$i $zeilen; ++$i )
              {
                  echo 
              "\t<tr align=center bgcolor=#ffffff>\n";
                  
              // Spalte für Spalte
                  
              for( $ii 0;$ii $spalten; ++$ii )
                  {
                      
              // wenns nichts mehr gibt, ein &nbsp;
                      
              echo "\t\t<td>" . ( isset( $x[$i $spalten $ii] )?$x[$i $spalten $ii]:"&nbsp;" ) . "</td>\n";
                  }
                  echo 
              "\t</tr>\n";
              }
              echo 
              "</table>"
              wäre nettwenn mir jetzt nochmal jemdend den "zündenden" gedanken sagen kann ;o)
              hab die funktion "continue" gefunden wo es evtl. mit gehen würde aber irgendwie bin ich da noch nicht hintergekommen, wie das funktioniert ;o(

              danke schonmal für eure hilfe

              jens

              Kommentar


              • #8
                ahhhh habs eben hinbekommen,
                geht doch mit der continue geschichte ;o)

                man muß wissen wie die funktion genutzt werden muß.

                vielen dank für eure hilfe

                libe grüße
                jens

                Kommentar

                Lädt...
                X