Berechnungsmodul

sandra07
Beiträge: 93
Registriert: So 10. Apr 2005, 11:17
Wohnort: Schweiz
Kontaktdaten:

Berechnungsmodul

Beitrag von sandra07 »

Hallo zusammen

Ich habe für die Version 4.6 ein Berechnungsmodul geschrieben, das ich nun auch für die Contenido Version 4.4.5 brauche. Leider läuft es nicht unter 4.4.

Ich nehme an, es liegt an der Variable $url

Kann mir jemand sagen, wie ich das Modul abändern muss, das es auch unter 4.4. läuft??

Bin um jeden Tip froh... danke

Hier das Modul

Code: Alles auswählen

<?php
/*********************************************** 
* CONTENIDO MODUL - OUTPUT 
* 
* Modulname : Kompostauswertung 
* Author : sandra07
* Created : 01-03-2006
* Modified : 25-03-2006
************************************************/ 

// Contenido 4.6 
//$url = "http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?idcatart='. $idcatart .'&lang='. $lang .'&client='. $client; 

//Contenido 4.4.
$url = "http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?idcat='. $idcat .'&idart='. $idart .'&lang='. $lang .'&client='. $client; $client; 

if($_POST['menge'])
{
   $menge=$_POST['menge'];

     if($menge>0){
     $volumen=$menge*0.5;
     $gewicht=$volumen*0.504;
     $gewicht=round($gewicht,1);
     $substanz=$volumen*335; 
     $organisch=$substanz*0.504;
     $organisch=round($organisch,1);
     $stickstoff=$substanz*0.0153;
     $stickstoff=round($stickstoff,1);
     $stickstoffverf=$substanz*0.00153;
     $stickstoffverf=round($stickstoffverf,1);
     $phosphat=$substanz*0.0067;
     $phosphat=round($phosphat,1);
     $kalium=$substanz*0.0134;
     $kalium=round($kalium,1);
     $calcium=$substanz*0.0454;
     $calcium=round($calcium,1);
     $magnesium=$substanz*0.00661;
     $magnesium = round($magnesium,1);


     $txt="<p>
     <table width='100%' border='0' cellspacing='0' cellpadding='0'>
     <tr> 
       <td colspan='3'><span>&nbsp;<br>Eingabewert und Berechnung des TS-Gewichts</span> - Analyse vom: 6. Dezember 2002</td>
     </tr>
     <tr valign='top'> 
       <td width='34%'>Abgegebene Menge Frischsubstanz<br>in m<sup>3</sup> (FS-Volumen)</td>
       <td width='27%'>Sch&uuml;ttgewicht (<font face='Symbol'>&AElig;</font> 0.6)</td>
       <td width='39%'>Abgegebene Menge Frischsubstanz<br>in Tonnen (FS-Volumen)</td>
     </tr>
     <tr> 
       <td align='left' width='34%'>$menge m<sup>3</sup> FS</td>
       <td width='27%'>x 0.5&nbsp;t/m<sup>3</sup></td>
       <td width='39%'>= $volumen t FS</td>
     </tr>
     <tr> 
       <td width='34%'>&nbsp;</td>
       <td width='27%'>TS-Gehalt (<font face='Symbol'>&AElig;</font> 0.45)</td>
       <td width='39%'>TS-Gewicht</td>
     </tr>
     <tr> 
       <td width='34%'>&nbsp;</td>
       <td width='27%'><span>x</span> 0.504&nbsp;t TS/t FS</td>
       <td width='39%'><span>=</span> $gewicht&nbsp;t TS</td>
     </tr>
     <tr> 
       <td colspan='4'>&nbsp;<br>Gehalte (gem&auml;ss aktuellen Analyseergebnissen)</td>
     </tr>
     <tr> 
       <td width='34%'>Parameter</td>
       <td width='14%'>Einheit</td>
       <td width='13%'>Gehalt</td>
       <td width='39%'>bezogene OS- und N&auml;hrstoffmengen</td>
     </tr>
     <tr> 
       <td width='34%'>Trockensubstanz (TS):</td>
       <td width='14%'>%</td>
       <td width='13%'>33.5</td>
       <td width='39%'>&nbsp;</td>
     </tr>
     <tr> 
       <td width='34%'>Organische Substanz (OS):</td>
       <td width='14%'>% TS</td>
       <td width='13%'>50.4</td>
       <td align='right' width='39%'>$organisch kg</td>
     </tr>
     <tr> 
       <td width='34%'>Gesamt Stickstoff (N):</td>
       <td width='14%'>kg / t TS</td>
       <td width='13%'>15.3</td>
       <td align='right' width='39%'>$stickstoff kg</td>
     </tr>
     <tr> 
       <td width='34%'>Stickstoff (N) verf&uuml;gbar:</td>
       <td width='14%'>kg / t TS</td>
       <td width='13%'>15.3</td>
       <td align='right' width='39%'>$stickstoffverf kg</td>
     </tr>
     <tr> 
       <td width='34%'>Phosphat (P<sub>2</sub>O<sub>5</sub>):</td>
       <td width='14%'>kg / t TS</td>
       <td width='13%'>6.7</td>
       <td align='right' width='39%'>$phosphat kg</td>
     </tr>
     <tr> 
       <td width='34%' height='20'>Kalium (K<sub>2</sub>0):</td>
       <td width='14%' height='20'>kg / t TS</td>
       <td width='13%' height='20'>13.4</td>
       <td align='right' height='20' width='39%'>$kalium kg</td>
     </tr>
     <tr> 
       <td width='34%'>Calcium (Ca):</td>
       <td width='14%'>kg / t TS</td>
       <td width='13%'>45.4</td>
       <td align='right' width='39%'>$calcium kg</td>
     </tr>
     <tr> 
       <td width='34%'>Magnesium (Mg):</td>
       <td width='14%'>kg / t TS</td>
       <td width='13%'>6.61</td>
       <td align='right' width='39%'>$magnesium kg</td>
     </tr>
     <tr> 
       <td colspan='4'>Hinweis:<br>Der Kompost gen&uuml;gt den Anforderungen der Schrift "Mindestqualit&auml;t 
            von Kompost" (FAC 1993) bez&uuml;glich Schwermetallgehalt (Sto V), Hygiene und Fremdstoffgehalt.</td>
     </tr>
     <tr>
       <td colspan='4'>
           <table width='100%' border='0' cellspacing='0' cellpadding='0'>
           <tr>
             <td><a href='$url'>[ Neue Berechnung ]</a></td>
           </tr>
           </table>
     </tr>
     </table>
     </p>";}

else {$txt="<p>
      <b>Fehler</b><br><br>Bitte geben Sie eine gültige Zahl ein!</p>
      <table width='100%' border='0' cellspacing='0' cellpadding='0'>
      <tr>
        <td><a href='$url'>[ zurück ]</a></td>
      </tr>
      </table>";}

}

else {$txt="<p>
      <form method='post' action='$url'>
      <table style='width:100%';>
      <tr>
        <td colspan='2'>Geben Sie einen Wert ein und klicken Sie auf 'Berechnen'. Das Ergebnis erscheint in wenigen Sekunden.</td>
      </tr>
      <tr>
        <td><b>Abgegebene Menge Frischsubstanz in m3 (FS-Volumen):  </b><input type='text' name='menge' size=5 border='1' value='".$_POST['menge']."'> m3</td> 
      </tr>
      <tr>
        <td><input type='submit' value='Berechnen' name='submit'></td>
      </tr>
      </table>
      </form>
      </p>";
     }

echo $txt;

?>
Zuletzt geändert von sandra07 am Sa 25. Mär 2006, 09:13, insgesamt 3-mal geändert.
Gruss
Sandra
i-fekt
Beiträge: 1520
Registriert: Mo 3. Jan 2005, 02:15
Wohnort: Chemnitz
Kontaktdaten:

Beitrag von i-fekt »

Hast du überhaupt die idcatart oder hast du idcat und idart?
sandra07
Beiträge: 93
Registriert: So 10. Apr 2005, 11:17
Wohnort: Schweiz
Kontaktdaten:

Beitrag von sandra07 »

Wie meinst du das? Sorry, habe wohl Tomaten auf den Augen...
Gruss
Sandra
i-fekt
Beiträge: 1520
Registriert: Mo 3. Jan 2005, 02:15
Wohnort: Chemnitz
Kontaktdaten:

Beitrag von i-fekt »

Mach aus deiner $url mal das:

Code: Alles auswählen

$url = "http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'cms/front_content.php?idcat='. $idcat .'&idart='. $idart .'&lang='. $lang .'&client='. $client;
Wenn du den Quelltext öffnest und die URL im Form-tag anschaust, was steht da?
sandra07
Beiträge: 93
Registriert: So 10. Apr 2005, 11:17
Wohnort: Schweiz
Kontaktdaten:

Beitrag von sandra07 »

danke für dein vorschlag - leider geht es nicht

ich kann das modul schon gar nicht abspeichern, weil es irgend ein fehler hat - darum kann ich das modul schon gar nicht in eine seite integrieren, vom quelltext anschauen bin ich wohl noch weit entfernt :D

sobald ich speichern will kommt die fehlerseite...

bei der version 4.6 sieht es so aus:
form method="post" action="front_content.php?idcat=40
Gruss
Sandra
i-fekt
Beiträge: 1520
Registriert: Mo 3. Jan 2005, 02:15
Wohnort: Chemnitz
Kontaktdaten:

Beitrag von i-fekt »

4.6:

Code: Alles auswählen

$url = "/cms/front_content.php?idcatart=".$idcatart."&lang=".$lang."&client=".$client;
4.4.x

Code: Alles auswählen

$url = "/cms/front_content.php?idcat=".$idcat."&idart=".$idart."&lang=".$lang."&client=".$client;
sandra07
Beiträge: 93
Registriert: So 10. Apr 2005, 11:17
Wohnort: Schweiz
Kontaktdaten:

Beitrag von sandra07 »

Oh Oh, vor lauter ändern und ausprobieren habe ich einen Fehler gemacht. Das Modul, das auf 4.6. läuft lautet nicht wie oben gepostet sondern so:

$url = "http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?idcatart='. $idcatart .'&lang='. $lang .'&client='. $client;


Sorry sorry....

Deine Variante geht nicht ... *wein
Gruss
Sandra
sandra07
Beiträge: 93
Registriert: So 10. Apr 2005, 11:17
Wohnort: Schweiz
Kontaktdaten:

Beitrag von sandra07 »

und so gehts auch nicht.... oh mann ich glaub das nicht

$url = "http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?idcat='.$idcat.'&idart='.$idart.'&lang='. $lang .'&client='. $client;

vielleicht liegt das problem irgendwo anders? :?:
Gruss
Sandra
i-fekt
Beiträge: 1520
Registriert: Mo 3. Jan 2005, 02:15
Wohnort: Chemnitz
Kontaktdaten:

Beitrag von i-fekt »

Also bei mir geht es wie von mir gepostet.

Gib mal URL.
sandra07
Beiträge: 93
Registriert: So 10. Apr 2005, 11:17
Wohnort: Schweiz
Kontaktdaten:

Beitrag von sandra07 »

Das glaube ich Dir, dass deine Module alle laufen :D

Was für eine URL soll ich dir geben, wenn ich das Modul nicht speichern kann?

Möchtest du als sysadmin ins Backend? :D
Gruss
Sandra
i-fekt
Beiträge: 1520
Registriert: Mo 3. Jan 2005, 02:15
Wohnort: Chemnitz
Kontaktdaten:

Beitrag von i-fekt »

Mir ist unklar wieso du es nicht speichern kannst. Schick mal Passwort und URL per PN und sag wie es heißt.
sandra07
Beiträge: 93
Registriert: So 10. Apr 2005, 11:17
Wohnort: Schweiz
Kontaktdaten:

Beitrag von sandra07 »

Also ich nochmals...

Um den Fehler zu eruieren habe ich mal die Rechenoperationen und die Schleifen entfernt.

Der obere Text ($txt) lässt sich normal aufrufen, nicht aber der untere. Also irgendwie steckt der Fehler hier drin:

Das geht nicht... und isch mir schleierhaft warum nicht...

Code: Alles auswählen

<?php
$url = "http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'cms/front_content.php?idcat='. $idcat .'&idart='. $idart .'&lang='. $lang .'&client='. $client;
$txt= "<p> 
<form method='post' action='$url'> 
<table style='width:100%';> 
<tr> 
<td colspan='2'>Geben Sie einen Wert ein und klicken Sie auf 'Berechnen'. 
   Das Ergebnis erscheint in wenigen Sekunden.</td> 
</tr> 
<tr> 
<td><b>Abgegebene Menge Frischsubstanz in m3 (FS-Volumen):  </b><input type='text' name='menge' size=5 border='1' value='".$_POST['menge']."'> m3</td> 
</tr> 
<tr> 
<td><input type='submit' value='Berechnen' name='submit'>    
</td> 
</tr> 
</table> 
</form> 
</p>"; 
echo $txt; 
?>
Ich glaube das Problem liegt irgendwie im Formular

Kann jemand den Fehler entdecken? Ich nicht, seh den Wald vor lauter Bäumen nicht mehr...
Gruss
Sandra
i-fekt
Beiträge: 1520
Registriert: Mo 3. Jan 2005, 02:15
Wohnort: Chemnitz
Kontaktdaten:

Beitrag von i-fekt »

Ich kann dir leider nicht helfen, habe es mir gerade angeschaut, aber dein Contenido nimmt ganz simplen Code nicht an und leitet immer auf eine Website-Frontansicht um.

Hast du was an den Einstellungen des Servers geändert?
sandra07
Beiträge: 93
Registriert: So 10. Apr 2005, 11:17
Wohnort: Schweiz
Kontaktdaten:

Beitrag von sandra07 »

Nein, ich habe überhaupt nichts geändert - die anderen Module laufen ja auch und wie du sicher gesehen hast, sind es einige

Oh mann, das gibts doch nicht... Im ErrorLog ist auch nichts

:(
Gruss
Sandra
i-fekt
Beiträge: 1520
Registriert: Mo 3. Jan 2005, 02:15
Wohnort: Chemnitz
Kontaktdaten:

Beitrag von i-fekt »

Ich habe das Original Modul von dir aus dem ersten Beitrag in einer laufenden 4.4.5 Installation eingefügt und auch dort läuft es problemlos.

Hast du evtl. eine htaccess oder irgendwelche Weiterleitungen?
Gesperrt