Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
mySQL: nicht alles abfragen [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
mySQL: nicht alles abfragen


 
hansi
11-07-2002, 19:02 
 
hi leute !

ich habe mir ein kleines, aber feines newssystem gebastelt. Funktiomiert einwandfrei. die daten werden in einer mySQL Datenbank gespeichert und dann ausgelsen.

nun meine frage:
ist es möglich, dass nicht alles auf einer bestimmen spalte abgefagt wird, sondern nur z.B. die ersten 50 Zeichen ???

das ganze soll mit dem "Beitrag" gemacht werden.
Die Abfrage:


$beitrag = $row["beitrag"];
$beitrag = nl2br($beitrag);


ich hoffe ihr könnt mir helfen !

cu,
HANSI

 
Troublegum
11-07-2002, 19:20 
 
Bei MySQL:

SELECT SUBSTRING(beitrag,0,50) FROM news;

 
goth
11-07-2002, 19:21 
 
Dafür hat uns die Firma MySQL AB in Ihrer großen Weißheit die Funktionen SUBSTRING(), LEFT(), RIGHT(), MID() ... an die Hand gegeben ...

Englisches Manual (http://www.mysql.com/doc/S/t/String_functions.html)
Deutsches Handbuch (http://www.mysql.de/documentation/mysql/bychapter/manual.de_Reference.html#String_functions)

Hmmnn ... Trouble war schneller ... :(

 
Troublegum
11-07-2002, 19:23 
 
Dafür bist du jetzt Moderator ;).
Wie hast du das eigentlich angestellt ?

 
hansi
11-07-2002, 19:39 
 
vielen dank für die schnelle antwort. :huep:
wie baue ich dass bei dieser abfrage:


$abfrage = "SELECT * from news order by datum desc";

ein ??

cu,
HANSI

 
goth
11-07-2002, 19:41 
 
Original geschrieben von Troublegum
Dafür bist du jetzt Moderator ;).
Wie hast du das eigentlich angestellt ?

Ich habe gar nichts angestellt ... bzw. ich darf jetzt nicht's mehr anstellen ... :(

Wahrscheinlich weil ich jetzt einer der 10 aktivsten Poster bin ... ;)

 
hansi
11-07-2002, 19:51 
 
meine zweite frage steht 2 Beträge oben drüber.
ich hoffe ihr könnt mir helfen !

vielen dank!!!!!!

cu,
HaNsI

 
goth
12-07-2002, 01:07 
 
Hmmnnn ... wenn's für alle Felder gelten soll wirst Du's für jedes Feld machen müssen:

$abfrage = "SELECT SUBSTRING(feld1, 0, 50) AS feld1, SUBSTRING(feld2, 0, 50) AS feld2, ... from news order by datum desc";

Allerdings ... da's für mich eher nach 'nem CMS klingt ... eventuell für 'nen Teaser ... würde ich SUBSTRING(newstext, 0, 51) verwenden ... und dann mit php rechts alles wegschneiden was kein Leerzeichen oder 'ne Zeilenschaltung ist ... 'ne Tilde ( ... )oder einen "more"-Link hinterhängen ... fertig ... !


Alle Zeitangaben in WEZ +2. Es ist jetzt 23:21 Uhr.