Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Befehl Ereg decreased

Mitglied: 91863

91863 (Level 2)

08.12.2013, aktualisiert 09.12.2013, 1709 Aufrufe, 18 Kommentare, 1 Danke

Hallo,

ab 5.3 PHP ist der Befehl Ereg decreased Veraltet.
Weiss wer , wie die Zeile
01.
if (ereg('^GIFT', addslashes($gv_result['products_model']))) { 
neu aussehen muss. Komme bei der Beschreibung vom PHP nicht zurecht-

Gruss
Ralf
Mitglied: LordGurke
08.12.2013 um 15:36 Uhr
"deprecated" ist das Wort,. was du suchst

Was versuchst du denn zu matchen? Falls es dir darum geht, dass die Zeichenkette "GIFT" am Anfang des Strings steht, musst du nicht ändern - außer dass du ggf. delimiter an Anfang und Ende des Ausdrucks stellen musst.

Also als Beispiel:

01.
if ( preg_match('/^GIFT/', $gv_result['products_model']) )
Bei den PREG-Funktionen musst du die Eingabezeichenkette eigentlich nicht mehr escapen, deshalb habe ich das hier mal direkt weggelassen.
Bitte warten ..
Mitglied: 91863
08.12.2013 um 15:49 Uhr
Hoi,

danke. Damit schein es zu gehen. Habe nur nun wo anderst ein Fehler Muss schauen.

Gruss
Ralf
Bitte warten ..
Mitglied: 91863
08.12.2013, aktualisiert 09.12.2013
Weisst Du zufällig wie die Zeile noch in PHP 5.3 aussehen muss ? Dann würde bei mir wieder alles gehen
01.
 if ($this->include_tax == 'false') $order_total=$order_total-$order->info['tax']; 
02.
if ($this->include_shipping == 'false') $order_total=$order_total-$order->info['shipping_cost']; 
03.
return $order_total;
Bitte warten ..
Mitglied: LordGurke
08.12.2013 um 16:04 Uhr
An der Syntax sollte sich eigentlich nichts geändert haben....?
Was funktioniert denn nicht?

Schalte ggf. mal brachiale Fehlermeldungen ein, a.k.a.
error_reporting(E_ALL);
am Beginn des Scripts.

Vielleicht werden irgendwo irgendwelche Variablen nicht richtig gesetzt, weil auf register_globals zurückgegriffen wird?
Bitte warten ..
Mitglied: 91863
08.12.2013 um 16:43 Uhr
Da bringt er nur die gleiche Meldung.

Gruss
Rlaf
Bitte warten ..
Mitglied: LordGurke
08.12.2013 um 16:45 Uhr
Könntest du die Meldung einmal hier posten? So ganz ohne ist halt stochern im Nebel
Bitte warten ..
Mitglied: 91863
08.12.2013 um 16:47 Uhr
Hallo,

ok klar. War gar nicht gepostet ;)
Parse error: syntax error, unexpected 'if' (T_IF), expecting function (T_FUNCTION) in C:\xampp\htdocs\includes\modules\order_total\ot_modul_spesen.php on line 111

Gruss
Ralf
Bitte warten ..
Mitglied: LordGurke
08.12.2013 um 16:54 Uhr
Welches von den beiden IF ist denn in Zeile 111?
Bei solchen Fehlermeldungen liegt der Fehler normalerweise eine Zeile über dem, was angeblich falsch ist...
Bitte warten ..
Mitglied: 91863
08.12.2013, aktualisiert 09.12.2013
111 ist das hier :

01.
  if ($this->include_tax == 'false') $order_total=$order_total-$order->info['tax'];
obendran steht noc eine }

Gruss
Ralf
Bitte warten ..
Mitglied: LordGurke
08.12.2013 um 16:59 Uhr
Kannst du die letzten 5 Codezeilen über der Zeile 111 bitte einmal posten?
Irgendwas lässt PHP glauben du willst nicht "IF" sondern "function ...." schreiben - das dürfte bedeuten, dass die geschweifte Klammer an der falschen Stelle oder überzählig ist und du damit versehentlich die aktuelle "function"-Definition beendest.
Bitte warten ..
Mitglied: 91863
08.12.2013, aktualisiert 09.12.2013
Hoi,

habe mal paar Zeilen mehr, die unterste ist 111

01.
 for ($i=0; $i<sizeof($products); $i++) { 
02.
        $t_prid = tep_get_prid($products[$i]['id']); 
03.
        $gv_query = tep_db_query("select products_price, products_tax_class_id, products_model from " . TABLE_PRODUCTS . " where products_id = '" . $t_prid . "'"); 
04.
        $gv_result = tep_db_fetch_array($gv_query); 
05.
        if ( preg_match('/^GIFT/', $gv_result['products_model']) ) 
06.
        $qty = $cart->get_quantity($t_prid); 
07.
          $products_tax = tep_get_tax_rate($gv_result['products_tax_class_id']); 
08.
          if ($this->include_tax =='false') { 
09.
            $gv_amount = $gv_result['products_price'] * $qty; 
10.
          } else { 
11.
            $gv_amount = ($gv_result['products_price'] + tep_calculate_tax($gv_result['products_price'],$products_tax)) * $qty; 
12.
13.
          $order_total=$order_total - $gv_amount; 
14.
15.
      if ($this->include_tax == 'false') $order_total=$order_total-$order->info['tax'];
Gruss
Ralf
Bitte warten ..
Mitglied: LordGurke
08.12.2013 um 17:10 Uhr
Hm....
ich kann da jetzt keinen echten Fehler oder überzählige Klammern sehen
Aber dieser Fehler deutet definitiv darauf hin, dass da irgendwo eine geschweifte Klammer steht, wo keine hingehört.

Sind diese Anweisungen innerhalb einer "function" und diese innerhalb einer Klasse?
Bitte warten ..
Mitglied: 91863
08.12.2013, aktualisiert 09.12.2013
ICh weiss nicht. Ist einfach mein Webshop der nicht mehr lauft, weil PHP nun aktueller ist.

das ist die gesamte Datei
01.
*/ 
02.
    class ot_modul_spesen { 
03.
   var $title, $output; 
04.
     
05.
    function ot_modul_spesen() { 
06.
      global $payment; 
07.
       
08.
      $this->code = 'ot_modul_spesen'; 
09.
      $this->title = MODULE_MODUL_SPESEN_TITLE; 
10.
      $this->description = MODULE_MODUL_SPESEN_DESCRIPTION; 
11.
      // bol ct: dynamic title/description of fee 
12.
      if (isset($payment)) { 
13.
        $table = preg_split("/[:,]/" , MODULE_MODUL_SPESEN_TYPE_DESCRIPTION); 
14.
        for ($i = 0; $i < count($table); $i+=2) { 
15.
          if ($payment == $table[$i]) { 
16.
            $this->title = $table[$i+1]; 
17.
            $this->description = $table[$i+1]; 
18.
19.
20.
21.
      // eol ct: dynamic title/description of fee 
22.
      $this->enabled = MODULE_MODUL_SPESEN_STATUS; 
23.
      $this->sort_order = MODULE_MODUL_SPESEN_SORT_ORDER; 
24.
      $this->type = MODULE_MODUL_SPESEN_TYPE; 
25.
      $this->tax_class = MODULE_MODUL_SPESEN_TAX_CLASS; 
26.
      $this->output = array(); 
27.
28.
 
29.
    function process() { 
30.
      global $order, $ot_subtotal, $currencies; 
31.
       
32.
      $od_amount = $this->calculate_charge($this->get_order_total()); 
33.
      if ($od_amount != 0) { 
34.
        $this->deduction = $od_amount; 
35.
        $this->output[] = array('title' => $this->title . ':', 
36.
                                'text' => $currencies->format($od_amount), 
37.
                                'value' => $od_amount); 
38.
	      $order->info['total'] = $order->info['total'] + $od_amount; 
39.
        if ($this->sort_order < $ot_subtotal->sort_order) { 
40.
          $order->info['subtotal'] = $order->info['subtotal'] - $od_amount; 
41.
42.
43.
44.
 
45.
    function calculate_charge($amount) { 
46.
      global $order, $customer_id, $payment; 
47.
      $od_amount=0; 
48.
      $table = preg_split("/[:,]/" , MODULE_MODUL_SPESEN_TYPE); 
49.
      for ($i = 0; $i < count($table); $i+=2) { 
50.
        if ($payment == $table[$i]) { 
51.
          $od_am=$table[$i+1]; 
52.
           
53.
          // use either a fixed amount or percentage of total incl. shipping 
54.
          if (substr($od_am,0,1) == '%') { 
55.
            $od_am=substr($od_am, 1); 
56.
            $od_am=round($amount/100*$od_am,1); // choose the decimal position for rounding 
57.
58.
           
59.
          if (MODULE_MODUL_SPESEN_TAX_CLASS > 0) { 
60.
            $tod_rate = tep_get_tax_rate(MODULE_MODUL_SPESEN_TAX_CLASS); 
61.
            $tod_description = tep_get_tax_description(MODULE_MODUL_SPESEN_TAX_CLASS, $order->delivery['country']['id'], $order->delivery['zone_id']); 
62.
            $tod_amount =  tep_calculate_tax($od_am, $tod_rate); 
63.
            $order->info['tax'] += $tod_amount; 
64.
            $order->info['tax_groups'][$tod_description] += tep_calculate_tax($table[$i+1], $tod_rate); 
65.
66.
           
67.
          if (DISPLAY_PRICE_WITH_TAX) {  
68.
            $od_amount = $od_am + $tod_amount; 
69.
          } else {        
70.
            $od_amount = $od_am; 
71.
            $order->info['total'] += $tod_amount; 
72.
73.
74.
75.
      return $od_amount; 
76.
77.
 
78.
    function get_order_total() { 
79.
      global  $order, $cart; 
80.
      $order_total = $order->info['total']; 
81.
      // Check if gift voucher is in cart and adjust total 
82.
      $products = $cart->get_products(); 
83.
      for ($i=0; $i<sizeof($products); $i++) { 
84.
        $t_prid = tep_get_prid($products[$i]['id']); 
85.
        $gv_query = tep_db_query("select products_price, products_tax_class_id, products_model from " . TABLE_PRODUCTS . " where products_id = '" . $t_prid . "'"); 
86.
        $gv_result = tep_db_fetch_array($gv_query); 
87.
        if ( preg_match('/^GIFT/', $gv_result['products_model']) ) 
88.
        $qty = $cart->get_quantity($t_prid); 
89.
          $products_tax = tep_get_tax_rate($gv_result['products_tax_class_id']); 
90.
          if ($this->include_tax =='false') { 
91.
            $gv_amount = $gv_result['products_price'] * $qty; 
92.
          } else { 
93.
            $gv_amount = ($gv_result['products_price'] + tep_calculate_tax($gv_result['products_price'],$products_tax)) * $qty; 
94.
95.
          $order_total=$order_total - $gv_amount; 
96.
97.
      if ($this->include_tax == 'false') $order_total=$order_total-$order->info['tax']; 
98.
      if ($this->include_shipping == 'false') $order_total=$order_total-$order->info['shipping_cost']; 
99.
      return $order_total; 
100.
101.
 
102.
    function check() { 
103.
      if (!isset($this->check)) { 
104.
        $check_query = tep_db_query("select configuration_value from " . TABLE_CONFIGURATION . " where configuration_key = 'MODULE_MODUL_SPESEN_STATUS'"); 
105.
        $this->check = tep_db_num_rows($check_query); 
106.
107.
       
108.
      return $this->check; 
109.
110.
 
111.
    function keys() { 
112.
      return array('MODULE_MODUL_SPESEN_STATUS', 'MODULE_MODUL_SPESEN_SORT_ORDER', 'MODULE_MODUL_SPESEN_TYPE', 'MODULE_MODUL_SPESEN_TYPE_DESCRIPTION', 'MODULE_MODUL_SPESEN_TAX_CLASS'); 
113.
114.
 
115.
    function install() { 
116.
      tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Zeige Modul-Spesen', 'MODULE_MODUL_SPESEN_STATUS', 'true', 'Möchten Sie die Modul-Spesen anzeigen?', '6', '1','tep_cfg_select_option(array(\'true\', \'false\'), ', now())"); 
117.
      tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Sortierung', 'MODULE_MODUL_SPESEN_SORT_ORDER', '79', 'Sortierreihenfolge.', '6', '2', now())"); 
118.
      tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Zahlungsweisen', 'MODULE_MODUL_SPESEN_TYPE', 'nachnahme:15,rechnung:%3', 'Spezifische Zahlungsweisen welche belastet werden.', '6', '2', now())"); 
119.
      tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Zahlungsweisen Beschreibung', 'MODULE_MODUL_SPESEN_TYPE_DESCRIPTION', 'nachnahme:Nachnahme-Gebühren,rechnung:3% Rechnungs-Spesen', 'Spezifische Beschreibung zu jeder Zahlungsweise.', '6', '3', now())"); 
120.
      tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, use_function, set_function, date_added) values ('Steuer Klasse', 'MODULE_MODUL_SPESEN_TAX_CLASS', '0', 'Folgende Steuer-Klasse mit Modul-Spesen verwenden.', '6', '6', 'tep_get_tax_class_title', 'tep_cfg_pull_down_tax_classes(', now())"); 
121.
122.
 
123.
    function remove() { 
124.
      $keys = ''; 
125.
      $keys_array = $this->keys(); 
126.
      for ($i=0; $i<sizeof($keys_array); $i++) { 
127.
        $keys .= "'" . $keys_array[$i] . "',"; 
128.
129.
      $keys = substr($keys, 0, -1); 
130.
 
131.
      tep_db_query("delete from " . TABLE_CONFIGURATION . " where configuration_key in (" . $keys . ")"); 
132.
133.
  }   
?>
Bitte warten ..
Mitglied: LordGurke
08.12.2013 um 17:22 Uhr
Bei mir unter PHP 5.3.3 läuft die Datei ohne Probleme - und da das ein Parse-Error ist, müsste der sofort auftreten wenn man versucht diese Datei auszuführen - unabhängig davon welche Werte man welchen Methoden übergibt.
Kannst du sicherstellen, dass die Datei die den Fehler wirft auch wirklich den selben Inhalt hat, den sie haben sollte?
Evtl. ist da irgendeine Synchronisation (z.B. per FTP) fehlgeschlagen und die Datei ist beschädigt bzw. unvollständig übertragen worden.
Bitte warten ..
Mitglied: 91863
08.12.2013 um 17:28 Uhr
Hallo,

die Datei liegt noch lokal auf meinem PC. Ich baue meinen alten Shop über Xamp local neu auf.

Gruss
Ralf
Bitte warten ..
Mitglied: 91863
08.12.2013 um 17:31 Uhr
ich habe mal die Datei neu abgespeichert. Nun geht nur eine andere Dati mit Fehler auf

Fatal error: Call to undefined function tep_remove_order() in C:\xampp\htdocs\includes\modules\payment\bitpay.php on line 119
Da steht
tep_remove_order($insert_id, $restock = true);

Gruss
Ralf
Bitte warten ..
Mitglied: LordGurke
08.12.2013 um 17:34 Uhr
Das riecht doch sehr danach als wäre das mehreren Dateien wiederfahren...
Vermutlich sind mehrere Dateien nicht korrekt auf dem Server gelandet, synchronisiere am Besten mal *alle* Dateien neu.
Bitte warten ..
Mitglied: 91863
12.12.2013 um 16:13 Uhr
Hallo,

das Problem ist in Luft aufgegangen. Testet man das im Xampp geht es nicht. aBer Online JA

Danlke und Gruss
Ralf
Bitte warten ..
Ähnliche Inhalte
PHP
Function ereg() is deprecated
gelöst Frage von 91863PHP6 Kommentare

Hallo, ich bekomme die Meldung: Die Zeile ist Wei muss die Richtig lauten, das die das PHP kennt ? ...

Batch & Shell
CMD:FTP Befehle
gelöst Frage von BoogiemanBatch & Shell11 Kommentare

Hallo, ich bins mal wieder Ich möchte jetzt per Batch auf den Server connecten und von da eine Datei ...

Batch & Shell

Ping-Befehl mit FIND-Pipe in IF-Befehl einbauen

gelöst Frage von ThraexBatch & Shell3 Kommentare

Schöne Grüße an die Community,, derzeit bereitet mir eine simple Anforderung arge Probleme. Ich hoffe mit dem Wissen aus ...

Microsoft Office

VBA Shell Befehl asynchron

gelöst Frage von 125218Microsoft Office1 Kommentar

Guten Abend, ich bin im Moment dran ein Makro zu schreiben, dass eine Batch-Datei ausführen soll. Diese Batch-Datei durchsucht ...

Neue Wissensbeiträge
Windows 10

USB Maus und Tastatur versagen Dienst unter Windows 10

Erfahrungsbericht von hardykopff vor 1 TagWindows 105 Kommentare

Da steht man ziemlich dumm da, wenn der PC sich wegen fehlender USB Tastatur und Maus nicht bedienen lässt. ...

Administrator.de Feedback
Update der Seite: Alles zentriert
Information von Frank vor 1 TagAdministrator.de Feedback18 Kommentare

Hallo User, die größte Änderung von Release 5.8 ist das Zentrieren der Webseite (auf großen Bildschirmen) und ein "Welcome"-Teaser ...

Humor (lol)

WhatsApp-Nachrichten endlich auch per Bluetooth versendbar

Information von BassFishFox vor 1 TagHumor (lol)4 Kommentare

Genau darauf habe ich gewartet! ;-) Der beliebte Messaging-Dienst WhatsApp erhält eine praktische neue Funktion: Ab dem nächsten Update ...

Google Android

Googles "Android Enterprise Recommended" für Unternehmen

Information von kgborn vor 2 TagenGoogle Android3 Kommentare

Hier eine Information, die für Administratoren und Verantwortliche in Unternehmen, die für die Beschaffung und das Rollout von Android-Geräten ...

Heiß diskutierte Inhalte
Windows Netzwerk
WSUS4 und Windows 10 Updates automatisch installieren
Frage von sammy65Windows Netzwerk15 Kommentare

Hallo miteinander, ich habe mit einen neuen WSUS Server aufgesetzt Server 2016 darauf einen aktuellen WSUS. Grund, wir stellen ...

Speicherkarten
Vergessliche USB-Sticks?
Frage von hanheikSpeicherkarten14 Kommentare

Ich habe in den letzten Tagen 500 USB-Sticks mit Bilddateien bespielt. Obwohl ich die Dateien mit größter Sorgfalt kopiert ...

Windows Server
NTFS Berechtigungen Ordnerstruktur
Frage von hukahu23489Windows Server11 Kommentare

Hallo, ich bin seit kurzem in einer neuen IT-Abteilung und bin über das Berechtigungskonzept des Unternehmens sehr schockiert. Ich ...

Hyper-V
Hyper-V mit altem XEON-Server. Was ist falsch?
Frage von LollipopHyper-V11 Kommentare

Hallo Bin etwas frustriert. Kleinbetrieb, ca. 15 PC's, 2 Stk. Server mit einigen virtuellen PC's für Fernwartung, VaultServer für ...