Ein Kunde von mir hat in Eigenregie ein script an CMSMS angedockt - seine Funktion: aus einer externen DB wird qua PLZ eine Händlerliste ausgeben.
Das Script funktioniert soweit wunderbar - nur: jetzt möchte der Kunde, dass der Output des Scripts nicht in einer neuen Seite, sondern im Content des CMS erscheint. Macht ja auch Sinn ...
Die PLZ-Abfrage ist im Content per UDT namens {plzabfrage} eingebunden.
Code: Select all
$leitzahl=$params['leitzahl'];
$leit2 = substr("$leitzahl",0,2);
include "kundensuche.php";
Code: Select all
[....]blablabla[...]
<span class="Stil2">
<form target="_blank" action="kundenliste.php" method="post">
<span class="Stil2">Postleitzahl</span>
<input type="text" size="5" name="leit2" />
<input type="image" src="../../../../images/suche.gif" />
</form>
</span>
Das soll so nicht mehr sein. Okay. Hab ich schnell mal was probiert:
1. Neue Content-Seite erstellt (Seiten-Alias 'kundenliste')
2. Dort per UDT die o.g. 'kundenliste.php' includiert
3. Das Formular (UDT {plzabfrage} wurde folgendermassen abgeändert.
Code: Select all
<form action="index.php/kundenliste" method="post">
So, das Script 'kundenliste.php' wird jetzt sauber gestartet, der Content (Händerliste nach PLZ-Abfrage) wird auch im Content des CMS angezeigt --
NUR: die PLZ, die man im Formular eingibt, wird (name="leit2" ) wird NICHT an das Script übergeben.
Okay. Nächster Versuch: method="get" statt "post".
Ergebnis: Seite nicht gefunden (URL lautet sinngemäss: http://seite.de/index.php/kundenliste?leit2=12345)
Grummel ...
Muss vielleicht eine eigene 'function' aus der kundenliste.php' bauen, damit die Parameter korrekt übergeben werden?
Kann ich mir eigentlich nicht vorstellen. Aber, ich bin ja auch immer noch kein smarty/php-wizard

For the Records - hier das inkiminierte Script:
Code: Select all
<?php
function Umlaute($text){
//DIE UMLAUTE WERDEN KONVERTIERT /////
$pattern1="/ä/";
$replace1="ä";
$text=preg_replace($pattern1,$replace1, $text);
$pattern2="/ö/";
$replace2="ö";
$text=preg_replace($pattern2,$replace2, $text);
$pattern3="/ü/";
$replace3="ü";
$text=preg_replace($pattern3,$replace3, $text);
$pattern1a="/Ä/";
$replace1a="Ä";
$text=preg_replace($pattern1a,$replace1a, $text);
$pattern2a="/Ö/";
$replace2a="Ö";
$text=preg_replace($pattern2a,$replace2a, $text);
$pattern3a="/Ü/";
$replace3a="Ü";
$text=preg_replace($pattern3a,$replace3a, $text);
$pattern4="/ß/";
$replace4="ß";
$text=preg_replace($pattern4,$replace4, $text);
return $text;
}
include("/blabla/dbdata.inc.php");
//einbinden der externen DB //
$lang=strlen($leit2);
$anz = $leit2;
echo "<br />";
if ($lang==0)
{echo "Sie haben keine Postleitzahl eingegeben. Es wird nun die Postleitzahl 00** gesucht.";
$leit2="00000";}
else
{if($lang==1)
{$leit2=$leit2*10000; echo "Die von Ihnen gesuchte Postleitzahl hat nur ".$lang." Stelle und wurde als ".$leit2." interpretiert";}
else
{
if($lang==2)
{$leit2=$leit2*1000; echo "Die von Ihnen gesuchte Postleitzahl hat nur ".$lang." Stelle und wurde als ".$leit2." interpretiert";}
}};
echo "<br />";
echo "<br/> ";
$limit= 100;
//$leit2=substr($leit2,0,2);//
$sql="select * from ".$table." WHERE Marke='on' AND webfreigabe='on' AND plz LIKE '".$leit2."%' ORDER BY plz,name ASC LIMIT $limit" ;
$result=mysql_db_query($db, $sql);
$menge=mysql_num_rows($result);
if ($menge == 0)
{ echo "Ihre Suche: ".$leit2." ergab kein Ergebnis. Die Suche wurde entsprechend erweitert.";
echo "<br />";
$leit2=substr($leit2,0,2);
$limit=5;
$sql="select * from ".$table." WHERE Marke='on' AND webfreigabe='on' AND plz LIKE '".$leit2."%' ORDER BY plz,name ASC LIMIT $limit" ;
$result=mysql_db_query($db, $sql);
$menge=mysql_num_rows($result);
if ($menge == 0)
{$leit2=substr($leit2,0,1);
$limit=5;
$sql="select * from ".$table." WHERE Marke='on' AND webfreigabe='on' AND plz LIKE '".$leit2."%' ORDER BY plz,name ASC LIMIT $limit" ;
$result=mysql_db_query($db, $sql);
$menge=mysql_num_rows($result);}
while ($row = mysql_fetch_array($result,MYSQL_ASSOC)) {
echo "<table width='550' border='0' cellspacing='0' cellpadding='0'>";
echo "<br />";
echo" <tr>";
echo" <td bgcolor='E1E1E1' colspan='2' style='padding:5px'><b>".umlaute($row["firma"])."</b></td>";
echo" </tr>";
//echo" <tr>";
//echo" <td colspan='2'>";
//echo" </td>";
//echo" </tr>";
echo" <tr>";
echo" <td bgcolor='white' valign='bottom' style='padding:5px' width='250'>";
echo umlaute($row["strasse"]);
echo" <br>";
echo $row["plz"] ." ";
echo umlaute ($row["ort"]);
echo" <br>Telefon ";
echo $row["telefon"];
echo" <br>Fax ";
echo $row["telefax"];
echo" <br>";
echo "<a href='mailto:".$row["email"]."'>".$row["email"]."</a>";
echo" </td>";
echo" <td bgcolor='A5A5A3' valign='bottom' style='padding:5px'> Probefahrt <b>";
echo $row["prob"];
echo" </b> <br>Finanzierung <b>";
echo $row["finanz"];
echo" </b><br> Inzahlungnahme <b>";
echo $row["inzahl"];
echo" </b></td>";
echo" </tr>";
echo" <tr>";
echo" <td bgcolor='#A5A5A3' colspan='2'>";
//echo" ";
echo" </td>";
echo" </tr>";
echo" <tr>";
echo" <td bgcolor='#7E7E7E' style='padding:5px'><b><a href='kundendetail.php?id=".$row["id"]."'target=_blank>Details</a></b></td>";
//echo" <td bgcolor='#7E7E7E' style='padding:5px'><b><a href='javascript:popup(\'kundendetail.php?id=".$row["id"]."\',123,123,142)'>Details</a></b></td>";
echo" <td bgcolor='#7E7E7E' style='padding:5px'><b><a href='http://".$row["website"]."' target=_blank>Zur Website</a></b></td>";
echo" </tr>";
echo"</table><br> ";
}
echo "</br>";}
else {
while ($row = mysql_fetch_array($result,MYSQL_ASSOC)) {
echo "<table width='550' border='0' cellspacing='0' cellpadding='0'>";
echo" <tr>";
echo" <td bgcolor='E1E1E1' colspan='2' style='padding:5px'><b>".umlaute($row["firma"])."</b></td>";
echo" </tr>";
//echo" <tr>";
//echo" <td colspan='2'>";
//echo" </td>";
//echo" </tr>";
echo" <tr>";
echo" <td bgcolor='white' valign='bottom' style='padding:5px' width='250'>";
echo umlaute($row["strasse"]);
echo" <br>";
echo $row["plz"] ." ";
echo umlaute ($row["ort"]);
echo" <br>Telefon ";
echo $row["telefon"];
echo" <br>Fax ";
echo $row["telefax"];
echo" <br>";
echo "<a href='mailto:".$row["email"]."'>".$row["email"]."</a>";
echo" </td>";
echo" <td bgcolor='A5A5A3' valign='bottom' style='padding:5px'> Probefahrt <b>";
echo $row["prob"];
echo" </b> <br>Finanzierung <b>";
echo $row["finanz"];
echo" </b><br> Inzahlungnahme <b>";
echo $row["inzahl"];
echo" </b></td>";
echo" </tr>";
echo" <tr>";
echo" <td bgcolor='#A5A5A3' colspan='2'>";
//echo" ";
echo" </td>";
echo" </tr>";
echo" <tr>";
echo" <td bgcolor='#7E7E7E' style='padding:5px'><b><a href='kundendetail.php?id=".$row["id"]."'target=_blank>Details</a></b></td>";
//echo" <td bgcolor='#7E7E7E' style='padding:5px'><b><a href='javascript:popup(\'kundendetail.php?id=".$row["id"]."\',123,123,142)'>Details</a></b></td>";
echo" <td bgcolor='#7E7E7E' style='padding:5px'><b><a href='http://".$row["website"]."' target=_blank>Zur Website</a></b></td>";
echo" </tr>";
echo"</table><br> ";}
}
?>