AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Feld aus Liste selectieren MySQL - PHP
Thema durchsuchen
Ansicht
Themen-Optionen

Feld aus Liste selectieren MySQL - PHP

Ein Thema von Fritz01 · begonnen am 11. Feb 2009 · letzter Beitrag vom 15. Feb 2009
Antwort Antwort
Seite 1 von 2  1 2      
Fritz01

Registriert seit: 22. Mär 2006
Ort: Großenkneten
181 Beiträge
 
Delphi 7 Professional
 
#1

Feld aus Liste selectieren MySQL - PHP

  Alt 11. Feb 2009, 22:38
Hallo guten Abend,
mit folgendem Code erstelle ich eine Liste aus einer AdressDatei.
Delphi-Quellcode:
<?php
  define('MYSQL_HOST', 'localhost');
  define('MYSQL_BENUTZER', 'root');
  define('MYSQL_KENNWORT', 'teste');
  define('MYSQL_DATENBANK', 'test');
  $db_link = mysql_connect (MYSQL_HOST, MYSQL_BENUTZER, MYSQL_KENNWORT);

  $db_sel = mysql_select_db( MYSQL_DATENBANK )
     or die('Auswahl der Datenbank fehlgeschlagen');

  $sql = "SELECT * FROM adressen ORDER BY nname LIMIT 20";

  $db_erg = mysql_query( $sql );
   if ( ! $db_erg )
   {
    die('Ungültige Abfrage: ' . mysql_error());
   }

   echo '<table width="200" border="0" cellspacing="1"
cellpadding="3" align="right" bgcolor="#B0C4DE">
';
    while ($zeile = mysql_fetch_array( $db_erg, MYSQL_ASSOC))
    {
    echo '<tr bgcolor="#ffffee" >';
    echo '<td width="20%"><h6>'. $zeile['adnum'] . '</td>';
    echo '<td width="80%"><h6>'. $zeile['nname'] . '</td>';
    echo  '</tr>' ;
    }

   echo '</table>';
   mysql_free_result( $db_erg );
?>
Nun meine Fragen:
1)Wie kann ich nun aus dieser Liste einen Datensatz selectieren, um dann zu diesem Satz weitere Anfragen zu starten?
2)In dieser Liste werden (wegen LIMIT 20) 20 Datensätze gelistet. Wie erreiche ich die nächsten 20 Datensätze?

Wer kann mir da helfen. Habe etliche Tutorials gelesen, aber genau dazu nichts gefunden.
Fritz
Fritz
  Mit Zitat antworten Zitat
Florian H

Registriert seit: 30. Mär 2003
Ort: Mühlacker
1.043 Beiträge
 
Delphi 6 Professional
 
#2

Re: Feld aus Liste selectieren MySQL - PHP

  Alt 11. Feb 2009, 22:45
Zitat von Fritz01:
Nun meine Fragen:
1)Wie kann ich nun aus dieser Liste einen Datensatz selectieren, um dann zu diesem Satz weitere Anfragen zu starten?
2)In dieser Liste werden (wegen LIMIT 20) 20 Datensätze gelistet. Wie erreiche ich die nächsten 20 Datensätze?
1) Ich verstehe die Frage nicht genau - was willst du tun? Ggf. geht das in Richtung JOINs, falls du zu jedem Eintrag aus der Adress-Tabelle z.B. noch die dazugehörigen Kundendaten haben willst?

2) Zeile 11:
Code:
$sql = "SELECT * FROM adressen ORDER BY nname LIMIT 20, 20";
Gibt dir 20 Einträge ab dem 20. Eintrag aus. Sprich: LIMIT X,Y: Y Einträge überspringen, dann Y Einträge anzeigen.
Florian Heft
  Mit Zitat antworten Zitat
Fritz01

Registriert seit: 22. Mär 2006
Ort: Großenkneten
181 Beiträge
 
Delphi 7 Professional
 
#3

Re: Feld aus Liste selectieren MySQL - PHP

  Alt 11. Feb 2009, 23:14
Hallo Florian H,
dank dir für die schnelle Antwort.
Satz selectieren, mit click oder wie auch immer. Alle zu diesem Satz gehörigen Daten sollen dann in einem Formular dargestellt werden. Verbindung zu anderen DatenTabellen: Wann hat der welche Rechnung bekommen.
20, 20 hilft da auch nicht weiter. Da werden ebenfalls 20 Sätze gezeigt, beginnend mit dem 21.
20 Datensätze anzeigen ist ja OK. Was ist mit scrollen oder .... An dieser Stelle sitze ich schon seit Tagen fest
Vielleicht gibt es ja doch eine Lösung.
Danke
Fritz
Fritz
  Mit Zitat antworten Zitat
Grolle

Registriert seit: 5. Nov 2004
Ort: Coesfeld
1.268 Beiträge
 
Delphi 2010 Professional
 
#4

Re: Feld aus Liste selectieren MySQL - PHP

  Alt 12. Feb 2009, 08:19
Hallo Fritz01,

du musst die empfangenen Daten wieder in ein Formular (oder einen Link) einfügen, auf welche du dann weiter reagierst. Du könntest es über eine URL z. B. so machen:
Code:
echo '[url="http://www.deineseite.de/detailformular.php?userid='.$zeile['adnum'].'"]Details[/url]';
Du kannst dann in der Datei detailformular.php die Variable userid mit $_Get['userid'] oder mit $_REQUEST['userid']
Wenn du alle Datensätze ausgeben willst, lass das LIMIT doch einfach weg

Viele Grüße ....

  Mit Zitat antworten Zitat
Fritz01

Registriert seit: 22. Mär 2006
Ort: Großenkneten
181 Beiträge
 
Delphi 7 Professional
 
#5

Re: Feld aus Liste selectieren MySQL - PHP

  Alt 12. Feb 2009, 22:49
@Grolle,
ich hab's noch nicht getestet (zeitmangel) aber das WE steht ja vor der Tür.
zu 1)Die Daten werden in einer Schleife ermittelt und angezeigt. Sollte das wirklich so sein, daß zu jedem Datensatz ein solcher Verweis erforderlich ist?

Delphi-Quellcode:
echo '<table width="200" border="0" cellspacing="1"
cellpadding="3" align="right" bgcolor="#B0C4DE">
';
    while ($zeile = mysql_fetch_array( $db_erg, MYSQL_ASSOC))
    {
    echo '<tr bgcolor="#ffffee" >';

echo '[url="http://www.deineseite.de/detailformular.php?userid='.$zeile['adnum'].'"]Details[/url]';

    echo '<td width="20%"><h6>'. $zeile['adnum'] . '</td>';
    echo '<td width="80%"><h6>'. $zeile['nname'] . '</td>';
    echo  '</tr>' ;
    }
 
   echo '</table>';
   mysql_free_result( $db_erg );
zu 2) LIMIT einfach weglassen. Dann werden alle Datensätze gezeigt und die Seite wird dadurch "zerrissen" habe im Anzeigefeld hierfür aber nur ca. 20-25 Zeilen frei. Wie ist es möglich, oder geht das überhaupt?
Beste Grüße
Fritz
Fritz
  Mit Zitat antworten Zitat
Grolle

Registriert seit: 5. Nov 2004
Ort: Coesfeld
1.268 Beiträge
 
Delphi 2010 Professional
 
#6

Re: Feld aus Liste selectieren MySQL - PHP

  Alt 12. Feb 2009, 22:56
Hallo,
Zitat von Fritz01:
1)Die Daten werden in einer Schleife ermittelt und angezeigt. Sollte das wirklich so sein, daß zu jedem Datensatz ein solcher Verweis erforderlich ist?
Ja, wie willst du sonst wissen, zu welchem Datensatz du die Details anzeigen willst?
Zitat von Fritz01:
zu 2) LIMIT einfach weglassen. Dann werden alle Datensätze gezeigt und die Seite wird dadurch "zerrissen" habe im Anzeigefeld hierfür aber nur ca. 20-25 Zeilen frei. Wie ist es möglich, oder geht das überhaupt?
Vielleicht habe ich deine Frage nicht richtig verstanden. Wenn du nur immer ~25 Datensätze anzeigen willst, brachst du eine Blätterfunktion?!? Also LIMIT 0,25 auf der nächsten Seite LIMIT 25,25 ....

Viele Grüße ....


Edit: Hier findest du z. B. eine Blätterfunktion beschrieben: Klick

  Mit Zitat antworten Zitat
Fritz01

Registriert seit: 22. Mär 2006
Ort: Großenkneten
181 Beiträge
 
Delphi 7 Professional
 
#7

Re: Feld aus Liste selectieren MySQL - PHP

  Alt 15. Feb 2009, 17:06
@grolle,
danke für deine tipps. Habe es so gelöst:

Delphi-Quellcode:
// Spalte mit Auswahl-Link für Personentabelle
    $perstab .= '<td bgcolor="#ffffee"><h6>
<a href="test.php
';
    $perstab .= '?pname=' . urlencode($name);
    $perstab .= '&pid='. $zeile['adnum'];
    $perstab .= '">'. $zeile['adnum'] .' | '. $zeile['nname'] . '</a></td>';
    $perstab .= '</tr>';
  }
  $perstab .= '</table>';
So steht also in dem Verweis adnum(ID) und der Name. Ist vielleicht nicht die eleganteste Lösung aber so geht es.

Zur Blätterfunktion: da dachte ich an eine Suchfunktion für den Namen, die bei jeder Eingabe eines Zeichens sofort reagiert und natürlich 'mitblättert'.
Beispiel: Eingabe 'M' , Ergebnis: Der erste Eintrag mit 'M' erscheint in der Mitte der Liste.
Vielleicht hast ja da auch einen Tipp wie man suchen und blättern kombinieren kann.
Schaun wir mal. Das wird dann meine nächste Aufgabe.
Nochmal danke
Fritz
Fritz
  Mit Zitat antworten Zitat
Grolle

Registriert seit: 5. Nov 2004
Ort: Coesfeld
1.268 Beiträge
 
Delphi 2010 Professional
 
#8

Re: Feld aus Liste selectieren MySQL - PHP

  Alt 15. Feb 2009, 17:30
Hi,
Zitat von Fritz01:
Zur Blätterfunktion: da dachte ich an eine Suchfunktion für den Namen, die bei jeder Eingabe eines Zeichens sofort reagiert und natürlich 'mitblättert'.
das wird mit normalem PHP schwer (wegen dem Reload). Kann man aber mit AJAX relativ schnell umsetzen.

Viele Grüße ...

  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: Feld aus Liste selectieren MySQL - PHP

  Alt 15. Feb 2009, 17:34
Es würde sich auch eine Template-Engine anbieten
Markus Kinzler
  Mit Zitat antworten Zitat
Fritz01

Registriert seit: 22. Mär 2006
Ort: Großenkneten
181 Beiträge
 
Delphi 7 Professional
 
#10

Re: Feld aus Liste selectieren MySQL - PHP

  Alt 15. Feb 2009, 19:25
Hallo ,
ach du großer Gott! Was ist bitte AJAX oder Template-Engine ?
Kann man HTML PHP und AJAX mischen? Wenn es nur so machbar ist, was solls.
Hat da jemand ein passendes Tutorial bzw Link zur Hand? Danke.
Fritz
Fritz
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:27 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz