Rausfinden was für ein Eintrag
HumpelHeinz
- php
Hallo,
ich möchte aus meiner Datenbank einen Wert ausgeben lassen, welcher aus einem Wort und einer Zahl besteht, und diesen dann noch überprüfen was für ein Wort das ist und was für eine Zahl.
Ich habe einmal angefangen:
<?php
$link = mysql_connect("bla", "bla", "bla");
mysql_select_db("bla", $link);
$result = mysql_query("SELECT * FROM comment ORDER by datum DESC LIMIT 0,5", $link);
while($data=mysql_fetch_array($result))
{
$cat = $data['cat'];
?>
wenn ich nun die Ausgabe mache bekomme ich nur den ganze block und nicht Zahl und Wort getrennt.
Wie mache ich das???
Gruß HumpelHeinz
Hallo HumpelHeinz,
$data['cat']; ist also ein String aus Text und Zahl bestehend, Du weisst aber weder, welcher Text, noch welche Zahl. Im Klartext koennte das demnach z. B. 123Tiger oder Baer2000 sein.
preg_match() waere hier das Richtige, um an beide Werte zu kommen.
Gruß,
Dieter
Hallo,
preg_match() waere hier das Richtige, um an beide Werte zu kommen.
Das ist nicht ganz, das was ich suche. etwas was den string aufteilt und dann beides ausgibt, ohne das es ich es mit etwas vergleichen zu muss
klarer?
Abend Gruß
Hallo,
preg_match() waere hier das Richtige, um an beide Werte zu kommen.
Das ist nicht ganz, das was ich suche. etwas was den string aufteilt und dann beides ausgibt, ohne das es ich es mit etwas vergleichen zu muss
klarer?
Deine Angaben sind sehr ungenau und Deine geposteter Quelltext fehlerhaft. Was gibst Du genau aus? Was steht in dem entsprechenden Feld? Bitte genaues Beispiel.
Tip: Quelltext immer kopieren, niemals abschreiben.
Gruß, Andreas
Hallo,
es geht um Comments die in einer Tabelle gespeichert werden und als Unterscheidung gibt es die Spalte "cat" es wird z.B. "aktuelles01" gespeichert.
Ich möchte nun, dass "aktuelles" und "01" ausgegeben wird.
Abend Gruß
Hallo HumpelHeinz,
Ich möchte nun, dass "aktuelles" und "01" ausgegeben wird.
Nochmal, dafuer brauchst du einen regulaeren Ausdruck und preg_match().
Ich unterstelle mal, der Inhalt von $data['cat'] ist 'aktuelles01';
preg_match ("/([a-zA-Z]*)([0-9]*)/", $data['cat'], $matches);
print_r($matches);
$matches enthaelt jetzt genau, was du brauchst, naemlich:
Array
(
[0] => aktuelles01
[1] => aktuelles
[2] => 01
)
Gruß,
Dieter
Danke das ist genau das was ich gesucht habe.
Hallo,
Danke das ist genau das was ich gesucht habe.
um es mit Sven Rautenberg zu sagen: '<beiss target="tischkante" style="strong"/>'
Gruß, Andreas
es geht um Comments die in einer Tabelle gespeichert werden und als Unterscheidung gibt es die Spalte "cat" es wird z.B. "aktuelles01" gespeichert.
Ich möchte nun, dass "aktuelles" und "01" ausgegeben wird.
also, wenn Du nur _eine_ Spalte ausliest ist es besser andrers zu speichern: 'aktuelles_01'. Und dann kannst Du am '_' mit explode() o.ä. trennen. Aber Du brauchst ein _eindeutiges_ Trennzeichen, das auch sonst nicht verwendet wird. Sonst mußt Du suchen und vergleichen, wie schon gesagt wurde.
im Übrigen bleibt zu fragen, warum Du nicht zwei Spalten für zwei Informationen nimmst.
Gruß, Andreas