1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Frage an die php Profis

Dieses Thema im Forum "Web-Programmierung" wurde erstellt von newmacuser24, 07.02.08.

  1. newmacuser24

    newmacuser24 Antonowka

    Dabei seit:
    27.12.05
    Beiträge:
    355
    Hallo zusammen!

    Suche für folgendes Problem eine Lösung:

    In einer MySQL Datenbank befindet sich eine Tabelle. In dieser Tabelle befinden sich 3 Spalten: Name, Telefonnummer, Emailadresse.
    Jetzt möchte ich zunächst nur ALLE Namen aus der Tabelle auf einer Webseite darstellen. Alle Namen sollen dabei als Link funktionieren und wenn man einen anklickt, wird auf einer neuen Seite oder neben der Tabelle (egal) der restliche Datensatz (also Telefonnummer und Emailadresse) angezeigt.

    Ich weiss, wie man die Daten aus der Tabelle ausliest. Ich weiss auch, wie man sie in einer einfachen Tabelle darstellt. Probleme gibts jetzt bei der Umsetzung mit den Links der einzelnen Datensätze, bzw. wär es optimal, wenn die Liste nur einen gewissen Bereich einnehmen würde und ab einer bestimmten Länge dann erlauben würde, dass man in ihr scrollt.

    Vielleicht hat ja jemand einen Hinweis, wo man mehr zu diesem Thema lernen kann?
    Danke schon mal im Voraus!
     
  2. AgentSmith

    AgentSmith Hochzeitsapfel

    Dabei seit:
    15.07.07
    Beiträge:
    9.361
    Ich kapiere ganz ehrlich gesagt überhaupt nicht, was du genau willst.. ;)
    Was haben denn die Links mit dem Scrollen zu tun?
    Bist du sicher, dass das eine PHP-Frage ist? Nicht eher eine HTML/CSS-Frage?
     
  3. zeno

    zeno Lane's Prinz Albert

    Dabei seit:
    05.11.05
    Beiträge:
    4.898
    Also ne ID pro Datensatz wäre nett, darauf kann der Link dann verweisen.
    Also SELECT id, name FROM blablabla.
    dann n Link aufbauen mit showdetails.php?id=$id
    über die kannste ja den rest laden
    Und um nicht alle auf einmal zu laden schaust du dir im mysql Manual noch den Limit Operator an ;)
     
  4. newmacuser24

    newmacuser24 Antonowka

    Dabei seit:
    27.12.05
    Beiträge:
    355
    Hm...ja, bei genauerer Betrachtung könnte es sich um eine HTML-Frage handeln...sorry, wenn ich ins falsche Forum gepostet habe.
    Das mit dem Scrollen wär rein kosmetisch, weshalb ich auch "...bzw. wär es optimal" geschrieben habe. Die eigentliche Frage dreht sich um die Links.
     
  5. fealXX

    fealXX Granny Smith

    Dabei seit:
    05.02.08
    Beiträge:
    15
    und den rest kann man per get machen
    ich hab da ma nen codeschnippsel
    Code:
    $sql='SELECT * FROM `image` WHERE `owner`=\''.$user['ID'].'\' LIMIT '.$_GET['von'].','.$_GET['bis'].';';
    $res=mysql_query($sql);
    echo'<table>';
    $true=false;
    while($pic=@mysql_fetch_array($res)){
    $true=true;
    echo'<tr><td><a href="'.$pic['file'].'"><img src="'.$pic['file'].'" width="200" height="150"></a></td><td><a href="index.php?site=acp&site2=pics&op=del&id='.$pic['picid'].'">Löschen</a></td></tr>';
    }
    if($true==true){
    $vonplus=$_GET['von']+30;
    $vonminus=$_GET['von']-30;
    $bisplus=$_GET['bis']+30;
    $bisminus=$_GET['bis']-30;
    if ($vonminus >= 0){
    echo'</table><p><a href="index.php?site=pics&von='.$vonminus.'&bis='.$bisminus.'">Letzte 30</a>  ||  <a href="index.php?site=pics&von='.$vonplus.'&bis='.$bisplus.'">N&auml;chste 30</a>';
    }else{
    echo'</table><p>||  <a href="index.php?site=pics&von='.$vonplus.'&bis='.$bisplus.'">N&auml;chste 30</a>';
    }else{
    echo'</table>Es wurden keine Bilder gefunden!';
    }
    kurzer schnippsel aus ner vorversion eines bilderhosters
     
  6. duderino

    duderino Goldparmäne

    Dabei seit:
    26.01.06
    Beiträge:
    556
    Den Link erstellst du am besten indem du die ID des entsprechenden Datensatzes in einen Link einfügst (z.B. benutzerdetails.php?id=1) So kannst du dann bei der Detailansicht die ID aus der URL lesen ($_GET["id"]) und die restlichen Daten aus der Datenbank abfragen.

    Wenn du keine ID hast, kannst du das auch mit der Telefonnummer oder mit der E-Mail des Benutzers machen. Kommt eigentlich aufs gleich raus, ist nur nicht so schön...


    duderino
     
  7. zeno

    zeno Lane's Prinz Albert

    Dabei seit:
    05.11.05
    Beiträge:
    4.898
    Vorallem bei Familien wo dann ne Telefonnummer oder E-Mail mal doppelt sein kann ;D
     
  8. duderino

    duderino Goldparmäne

    Dabei seit:
    26.01.06
    Beiträge:
    556
    Ja, mit Id ist es natürlich viel viel besser. Aber wenn er keine ID hat und das evtl auch nicht ändern kann, muss er halt schauen wie er es am besten macht. Man kann ja auch beides nehmen. E-Mail-Adresse und Telefonnummer...


    duderino
     
  9. zeno

    zeno Lane's Prinz Albert

    Dabei seit:
    05.11.05
    Beiträge:
    4.898
    Naja schnell noch ne neue Spalte reinwerfen ist jetzt mit mysql nicht so der Aufwand ;)
     
  10. rafi

    rafi Elstar

    Dabei seit:
    04.01.04
    Beiträge:
    74
    ALTER TABLE blablabla ADD id int(8) ZEROFILL AUTO_INCREMENT PRIMARY KEY;

    so in etwa ;) und schwupps haben auch schon alle eine nummer.
     
  11. duderino

    duderino Goldparmäne

    Dabei seit:
    26.01.06
    Beiträge:
    556
    Fügt MySQL dann wirklich die IDs für bestehende Einträge schon mit ein? Hab immer gedacht dass das nicht funktioniert. Werde es gleich mal testen...
     
  12. rafi

    rafi Elstar

    Dabei seit:
    04.01.04
    Beiträge:
    74
    und, hats funktioniert? ;)
    wegen dem auto increment füllt er die tatsächlich immer von alleine ein - ausser du bestimmst den wert beim erstellen des datensatzes.
     
  13. duderino

    duderino Goldparmäne

    Dabei seit:
    26.01.06
    Beiträge:
    556
    Tatsache. Hat funktioniert. Wusste wirklich nicht dass das so funktioniert.
    Außerdem wusste ich nicht dass es sowas wie ZEROFILL gibt :)

    Na dann steht newmacuser24 ja nichts mehr im Weg ;)
     
  14. TaTonka

    TaTonka Neuer Berner Rosenapfel

    Dabei seit:
    19.03.06
    Beiträge:
    1.961
    <grundsatzdiskussion> warum zerofill? was solln das bringen, außer ner einheitlichen formatierung?</GSD>
     
  15. rafi

    rafi Elstar

    Dabei seit:
    04.01.04
    Beiträge:
    74
    zerofill bewirkt das je nach sortiervorgang die zahlen nicht durcheinander kommen.

    1
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    2
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    3
    30

    joh, wenn da ein 0 davor ist passiert das nicht. computer ist eben nicht so schlau wie mensch ;) es gibt aber diverse sortiermöglichkeiten (in php), je nach dem wird da auch "menschlich" sortiert.
     
  16. zeno

    zeno Lane's Prinz Albert

    Dabei seit:
    05.11.05
    Beiträge:
    4.898
    Aber warum nicht UNSIGNED? Oder mag wer negative IDs vergeben? ;D
     
  17. .holger

    .holger Geflammter Kardinal

    Dabei seit:
    13.09.04
    Beiträge:
    9.117
    ZEROFILL hab ich noch nie benutzt und ein Order by ID in der Abfrage liefert auch kein 1, 10, 11, …, 19, 2, 21, … sondern ganz normal 1, 2, 3, …, 9, 10, 11, …
     
  18. duderino

    duderino Goldparmäne

    Dabei seit:
    26.01.06
    Beiträge:
    556
    ZEROFILL hat bei mir die Auswirkung gehabt, dass die IDs nicht so aussehen: 1,2,3,4,5 sondern so: 000001,000002,000003,...
     

Diese Seite empfehlen