• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

include function

Status
Für weitere Antworten geschlossen.

Mars@Gera

Mitglied
Habe eine functions-Datei angefangen, wo mathematische Berechnungen durchgeführt werden soll, und lasse die Ergebniss wieder per echo anzeigen, mein Problem ist, sie werden nicht da angezeit, wo ich das möchte!

functions.php
PHP:
<?php
error_reporting(E_ALL);

function difference_sets($sets_pro, $sets_con) {
    $sets = $sets_pro - $sets_con;
    echo $sets;
    }

function difference_plays($plays_pro, $plays_con) {
    $plays = $plays_pro - $plays_con;
    echo $plays;
    }
?>

und die Datei, wo es stehen soll!
PHP:
    echo '<tr>';
        echo '<td align="center">'.$year.'</td>';
        echo '<td align="center">'.$number.'</td>';
        echo '<td align="center">'.$wins.'</td>';
        echo '<td align="center">'.$tie.'</td>';
        echo '<td align="center">'.$loss.'</td>';
        echo '<td align="center">'.$sets_pro.':'.$sets_con.'</td>';
        echo '<td align="center">'.difference_sets($sets_pro, $sets_con).'</td>';
        echo '<td align="center">'.$plays_pro.':'.$plays_con.'</td>';
        echo '<td align="center">'.difference_plays($plays_pro, $plays_con).'</td>';
        echo '<td align="center">'.$points.'</td>';
    echo '</tr>';

MfG Marcel
 
du hast praktisch 2 mal echo ...

du gibts mit echo einen string aus

PHP:
echo "<td>".function()."</td>";
in der function() steht aber nochmal echo, wird also z.b zu
PHP:
echo "<td>".echo "test"."</td">;
ist nicht verwunderlich das das einen Fehler ergibt ;)

änder innerhalb deiner Funktionen das echo in return dann klappts ;)
 
Nebenbei warum nimmst du 2 mal die gleiche funktion die du einfach nur anders nennst? ^^
 
Abend,

Der Lösungsvorschlag von Frank behabt zwar das Problem. Die Fehlerursache ist aber eine andere.

PHP:
echo '<td align="center">'.difference_sets($sets_pro, $sets_con).'</td>';
Bevor PHP hier den String an echo übergebt wird er konkateniert, und im Zuge dessen die Funktion difference_sets ausgeführt.

Während der Ausführung gibt die Funktion $sets aus. Der Rückgabewert ist keiner, wird also zum leeren String.

Konkateniert ergibt sich damit folgender String:
<td align="center"></td>
der dann von echo ausgegeben wird.

edit @Mars@Gera: Dafür geht trotzdem die gleiche Funktion, du übergibst dann einfach unterschiedliche Parameter.

N43
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben