New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fehlereintrag Undefined index: fixedRate in Apache Log beim Anlegen eines neuen Zeiteintrages #1048

Open
bluefire42 opened this Issue Sep 5, 2017 · 2 comments

Comments

Projects
None yet
2 participants
@bluefire42

bluefire42 commented Sep 5, 2017

Expected behaviour

Kein Fehler im Apache log

Actual behaviour

Fehler im Apache Log, siehe "Relevant log entries..."
Zeiteintrag wird aber trotzdem angelegt,

Steps to reproduce

Erzeugen eines neuen Zeiteintrags.

Reproducable on demo.kimai.org? [yes|no]

Nicht nachvollziehbar, da kein Einblick in die Apache Logs des Demo-Servers möglich.

Kimai version [for example: dev 1.1.0.1389|github master|github develop]

dev 1.2.1.1393 (github master)

Relevant log entries from log file (debug tab or temporary/logfile.txt)

[Tue Sep 05 18:37:46.185517 2017] [php7:notice] [pid 2516:tid 1900] [client ::1:52870] PHP Notice: Undefined index: fixedRate in extensions\ki_timesheets\processor.php on line 494, referer: http://localhost/kimai/core/kimai.php

First analysis

In

$data['fixedRate'] = str_replace($kga['conf']['decimalSeparator'], '.', $_REQUEST['fixedRate']);
wird im $_REQUEST vom Browser per POST-Daten kein fixedRate übermittelt, da dies in der HTML Form in add_edit_timeSheetEntry.php über ausgeblendet wird.

Auf den ersten Blick kommt es zu keinen Folgefehlern wenn die Zeile 494 in processor.php auskommentiert wird.

@bluefire42

This comment has been minimized.

Show comment
Hide comment
@bluefire42

bluefire42 Dec 1, 2017

Der Fehler kann aus meiner Sicht behoben werden, wenn die if-Abfrage unter

um einen Else-Zweig mit Versteckten Input-Feldern erweitert wird:

<php else: ?>
    <li>
        <input id="rate" type="hidden" name="rate" value="<?php echo $this->escape($this->rate) ?>" size="5" tabindex="10"/>
        <input id="fixedRate" type="hidden" name="fixedRate" value="<?php echo $this->escape($this->fixedRate) ?>" size="5"
               tabindex="10"/>
    </li>
<?php endif; ?>

Bei mir wurden die Fehlereinträge im Log dadruch eliminiert. Kann das jemand gegenprüfen?

bluefire42 commented Dec 1, 2017

Der Fehler kann aus meiner Sicht behoben werden, wenn die if-Abfrage unter

um einen Else-Zweig mit Versteckten Input-Feldern erweitert wird:

<php else: ?>
    <li>
        <input id="rate" type="hidden" name="rate" value="<?php echo $this->escape($this->rate) ?>" size="5" tabindex="10"/>
        <input id="fixedRate" type="hidden" name="fixedRate" value="<?php echo $this->escape($this->fixedRate) ?>" size="5"
               tabindex="10"/>
    </li>
<?php endif; ?>

Bei mir wurden die Fehlereinträge im Log dadruch eliminiert. Kann das jemand gegenprüfen?

@simonschaufi simonschaufi added the Bug label Dec 2, 2017

@simonschaufi

This comment has been minimized.

Show comment
Hide comment
@simonschaufi

simonschaufi Dec 2, 2017

Member

Ich bin absolut gegen dirty hacks, stattdessen sollte im processor eine Abfrage gemacht werden, ob der Wert gesetzt ist.

Member

simonschaufi commented Dec 2, 2017

Ich bin absolut gegen dirty hacks, stattdessen sollte im processor eine Abfrage gemacht werden, ob der Wert gesetzt ist.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment