Liebe Communiy,
bald steht ein Umzug der Datenbank bevor. Für ein Restpostensystem muss ich den Umzug nun so komfortabel wie möglich gestalten.
Die neue Datenbank besitzt eine Spalte "Preis". In dieser Spalte soll logischerweise ein Zahlenwert stehen.
In der alten Datenbank ist es nun so, dass die Kunden ganz wilde Sachen in den Preisinput geschrieben haben und die Tabelle in der Datenbank echt vermüllt ist. Beispielangaben sind: 0,27/ Stk./Netto/ab Lager€ oder ab 14,50 €/100 Stück€. Mein Chefprogrammierer möchte so wenig Datenpflege wie möglich betreiben und ich soll jetzt versuchen, die Datensätze so zu filtern, dass im besten Fall nur die Zahlenwerte angezeigt werden (aus den oben genannten Beispielanzeigen).
Ich habs bereits mit regular expression versucht aber das hat nicht funktioniert.
Hat irgendwer eine Lösung oder Hilfestellung wie ich nur die Zahlenwerte mit explode oder sonst was aus den verschiedenen Preisangaben ziehen kann?
MfG
Daniel
Ankündigung
Einklappen
Keine Ankündigung bisher.
Datensätze nach Zahlenwerten filtern
Einklappen
Neue Werbung 2019
Einklappen
X
-
Datensätze nach Zahlenwerten filtern
Stichworte: -
-
Zitat von jspit Beitrag anzeigenDann hol dir den Preis mit preg_match und mache im 2.Schritt aus den Komma ein Punkt. Ob es vom Grundsatz ohne manuelles Eingreifen möglich ist deine Werte zu ändern kann ich nicht beurteilen.
Ein Gedanke noch:
Den RegEx für einen Preis relativ scharf formulieren und alle Preise die nicht matchen in eine Tabelle ausgeben und manuell nachpflegen.
-
Zitat von kovada Beitrag anzeigenIrgendwie muss es klappen, sodass der Datensatz ab 0,99 € auf Anfrage nur die Zahl 0,99 (mit Komma) liest und dann aufhört..
MAN BEDENKE: Der Datensatz kann auch so aussehen: Ab 0,99€/100STK-sofort
Ein Gedanke noch:
Den RegEx für einen Preis relativ scharf formulieren und alle Preise die nicht matchen in eine Tabelle ausgeben und manuell nachpflegen.
Einen Kommentar schreiben:
-
Ich würde sowas trotzdem händisch durchgehen. Menschen machen Fehler und falsche Beträge, die nachher in den Feldern stehen sind unter Umständen schwer zu finden oder du hast nachher andere Probleme. Lieber einmal richtig machen, auch wenns Zeit kostet.
Einen Kommentar schreiben:
-
das neue restpostensystem arbeitet ein bisschen anders, die kunden können die inputs nicht mehr nach belieben vollschreiben. beim preis wird nur ein zahlenwert akzeptiert..
geht wirklich nur um die alten datensätze die herübergezogen werden.. und da es tausende sind möchte ich nicht derjenige sein, der datensatz für datensatz durchgeht
Einen Kommentar schreiben:
-
Was mir Spontan einfallen würde, wäre, die Datensätze irgendwo Zwischenspeichern -> nach Zahlen Filtern -> neuen Wert in die Tabelle eintragen.
Mein Chefprogrammierer möchte so wenig Datenpflege wie möglich betreiben
Für die Zukunft, statt erst so spät nach den Daten zu Filtern schon beim Eintragen in die Datenbank Filtern für das, was genau da rein soll.
Wenn ihr die neue Datenbank eingenommen habt & Du jetzt alles Ordnungsgemäß gefilter hast werden die Kunden auch in die neue Datenbank so
reinschreiben 0,27/ Stk./Netto/ab Lager€. also einfach schon in der Eingabe Filtern und nur das reinschreiben was gebraucht wird.
Einen Kommentar schreiben:
-
Code:<?php $preistmp1 = $row->preis; $preistmp2 = preg_replace('/[^0-9]/','',$preistmp1); echo $preistmp2; ?>
Irgendwie muss es klappen, sodass der Datensatz ab 0,99 € auf Anfrage nur die Zahl 0,99 (mit Komma) liest und dann aufhört..
MAN BEDENKE: Der Datensatz kann auch so aussehen: Ab 0,99€/100STK-sofort
Einen Kommentar schreiben:
-
Zitat von kovada Beitrag anzeigenIch habs bereits mit regular expression versucht aber das hat nicht funktioniert.
Einen Kommentar schreiben:
Einen Kommentar schreiben: