HOERANDL.com Impressum Unterstützung Projekte Kontakt


phpContact

... ist die Weiterentwicklung des B4YFormmailers 2. Es wurden alle Schwächen behoben und viele Funktionen hinzugefügt. Durch die eigens entwickelte Templateengine können individuelle Formulare noch einfacher realisiert werden.
 
header
header
header
hessebou
Mitglied
Junior Boarder
Beiträge: 5
graphgraph
 
sporadischer fehler - 05/07/2007 20:35 Hallo,

bei meiner letzten Schwierigkeit habe ich hier schon sehr gute
Hilfe bekommen, nun habe ich noch ein Problem.
Ich ermögliche über eine 5-stellige numerische eingabe
(Postleitzahl) die berechnung der entfernung zu mir.

im firefox funktioniert es wie gewollt, auch in opera.
leider funktioniert es im IE7 nur manchmal,
ein anderes mal auch einfach nicht. ich weiss echt nich,
wo hier der fehler sein könnte. im anhang die komplette
datei, keine zusatzdateien nötig, so das ihr das testen könnt...

Code:

  <?php if (isset ($_POST['submit'])){ $ausgabe=''; $fehler=''; if (isset ($_POST['PLZ']) && !is_array($_POST['PLZ']) && $_POST['PLZ'] != ''){     if (preg_match ("/^([0-9]+)$/"$_POST['PLZ'])){         if (strlen($_POST['PLZ']) == 5){             $ausgabe .= htmlspecialchars($_POST['PLZ']) . " ";         }else{         $fehler .= 'Eingabe zu kurz!' "<br />";         }     }else{          $fehler .= 'Unzulässige Eingabe!' "<br />";      } }else{      $fehler .= 'Keine PLZ eingegeben!' "<br />"; } if ($fehler==''){     $route file_get_contents("http://maps.google.de/maps?f=d&ie=UTF8&hl=de&saddr=".$_POST['PLZ']."&daddr=zum+sonnenblick+2+63667");   $find 'class=\"noprint\"\u003e\u003cdiv\u003e';   $pos strpos($route$find);      if ($pos == ""){        echo "<div class='fehler'>";        echo "<b></b><br />";        echo "<b>Berechnungsfehler!</b><br />";        echo "<b></b><br />";        echo "</div>";      }else{        $pos strpos($route$find) + 38;        $km substr($route$pos3);        $nah substr($km, -1);        if ($nah == ","){          $km str_replace(","""$km);        }      echo "<div class='ausgabe'>";      echo "<b></b><br />";      echo "<b>Entfernung von ".$_POST['PLZ']." nach 63667 Nidda:    " $km " Kilometer </b><br />";      echo "<b></b><br />";      echo "</div>";      } }else{   echo "<div class='fehler'>";   echo "<b>Fehler!</b><br />";   echo "$fehler";   echo "</div>"; } }                ?> <style type="text/css"> <!-- body {font-family: verdana,arial; font-size:10px; color:black;} h1 {font-size:14px;} /* input {width:90px; border:1px solid black; font-size:10px; font- family:verdana,arial} */ textarea {width:270px; height:80px; border:1px solid black; font-size: 10px; font-family:verdana,arial} .fehler {position:absolute; BACKGROUND-COLOR: white; left: 230px; top:  175px; padding:10px; border: 2px solid red; padding:5px; color:red;  z-index:500}  .ausgabe {position:absolute; BACKGROUND-COLOR: white; left: 230px;  top: 175px; padding:10px; border: 2px solid green; padding:5px; color: green} --> </style> <table width="100%" height="100%"  border="0" cellpadding="0"  cellspacing="0">   <tr>     <td width="100%" valign="top" bgcolor="#FFD24F"><table height=" 100%" border=0 cellpadding=0 cellspacing=0>       <tr>         <td width="20%" height="36" style="padding-left:10px; ">< center>             <form action="<?php echo htmlspecialchars($_SERVER[' PHP_SELF']); ?>" method="POST"> Ihre Postleitzahl: <input type="text" name="PLZ" value="" size="5" maxlength="5"/> <input  type="submit" name="submit" value="Entfernung zu H2-X  berechnen"> </form>             </td>       </tr>              <tr>         <td align="center"><table width="585" height="100%"  border=" 0" cellpadding="0" cellspacing="0">           <tr>             <td width="9" align="center"></td>             <td valign="top" bgcolor="#FFD24F" style="padding-left: 0px; ">                 <img src="karte.jpg" width=506 height=662 alt="">                 </td>           </tr>         </table> </td>       </tr>            </table></table>

  | | Kein öffentlicher Schreibzugriff erlaubt, bitte erst registrieren!
Cougar
Admin
Admin
Beiträge: 725
graph
 
Re:sporadischer fehler - 05/07/2007 20:57 Hi,

versuche das mal:
<?php
if (isset ($_POST['submit'])){

$ausgabe='';
$fehler='';

if (isset ($_POST['PLZ']) && !is_array($_POST['PLZ']) && $_POST['PLZ'] != ''){
if (preg_match ("/^([0-9]+)$/", $_POST['PLZ'])){
if (strlen($_POST['PLZ']) == 5){
$ausgabe .= htmlspecialchars($_POST['PLZ']) . " ";
}else{
$fehler .= 'Eingabe zu kurz!' . "<br />";
}
}else{
$fehler .= 'Unzulässige Eingabe!' . "<br />";
}
}else{
$fehler .= 'Keine PLZ eingegeben!' . "<br />";
}

if ($fehler==''){
$route = file_get_contents("http://maps.google.de/maps?f=d&ie=UTF8&hl=de&saddr=". $_POST['PLZ']."&daddr=zum+sonnenblick+2+63667");
$find = 'class="noprint"u003eu003cdivu003e';
$pos = strpos($route, $find);
if ($pos == ""){
echo "<div class='fehler'>";
echo "<b></b><br />";
echo "<b>Berechnungsfehler!</b><br />";
echo "<b></b><br />";
echo "</div>";
}else{
$pos = strpos($route, $find) + 38;
$km = substr($route, $pos, 3);
$nah = substr($km, -1);
if ($nah == ","){
$km = str_replace(",", "", $km);
}
echo "<div class='ausgabe'>";
echo "<b></b><br />";
echo "<b>Entfernung von ".$_POST['PLZ']." nach 63667 Nidda: " . $km . " Kilometer </b><br />";
echo "<b></b><br />";
echo "</div>";
}
}else{
echo "<div class='fehler'>";
echo "<b>Fehler!</b><br />";
echo "$fehler";
echo "</div>";
}
}
?>
<style type="text/css">
<!--
body {font-family: verdana,arial; font-size:10px; color:black;}
h1 {font-size:14px;}
/* input {width:90px; border:1px solid black; font-size:10px; font-
family:verdana,arial} */
textarea {width:270px; height:80px; border:1px solid black; font-size:
10px; font-family:verdana,arial}
.fehler {position:absolute; BACKGROUND-COLOR: white; left: 230px; top:
175px; padding:10px; border: 2px solid red; padding:5px; color:red;
z-index:500}
.ausgabe {position:absolute; BACKGROUND-COLOR: white; left: 230px;
top: 175px; padding:10px; border: 2px solid green; padding:5px; color:
green}
-->
</style>
<table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="100%" valign="top" bgcolor="#FFD24F">
<table height="100%" border=0 cellpadding=0 cellspacing=0>
<tr>
<td width="20%" height="36" style="padding-left:10px; ">

<form action="<?php echo htmlspecialchars($_SERVER['
PHP_SELF']); ?>"
method="POST">
Ihre Postleitzahl:
<input type="text" name="PLZ" value="" size="5" maxlength="5"/>
<input type="submit" name="submit" value="Entfernung zu H2-X
berechnen">
</form>
</td>
</tr>
<tr>
<td align="center">
<table width="585" height="100%" border=" 0" cellpadding="0" cellspacing="0">
<tr>
<td width="9" align="center"></td>
<td valign="top" bgcolor="#FFD24F" style="padding-left: 0px; ">
<img src="karte.jpg" width=506 height=662 alt="">
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>


ich hab jetzt nichts getestet, nur einige Syntax-Fehler beseitigt.

mfg,
Cougar

  | | Kein öffentlicher Schreibzugriff erlaubt, bitte erst registrieren!
hessebou
Mitglied
Junior Boarder
Beiträge: 5
graphgraph
 
Re:sporadischer fehler - 05/07/2007 23:03 Hallo,

habe Deinen Code gerade mal getestet und da kam dann nie das
richtige ergebnis, weil du den string, der gesucht werden sollte,
auch verändert hast. das klappt jetzt wieder und irgendwie meine
ich durch zufall herausbekommen zu haben, worin der sporadische fehler
liegt: Der Internet-Explorer macht einen unterschied,
ob man die ENTER taste drückt, nachdem man die nummer
reingeschrieben hat, oder wirklich mit der maus den button drückt.

bei FF und Opera scheint dieser unterschied nicht zu bestehen.

mit diesem test (also alle möglichen eingaben jedesmal mit
der maus auf den button bestätigen) geht es nämlich...

kann das der fehler gewesen sein? kann man diesen unterschied
ENTERTASTE und BUTTON drücken irgendwie aufheben?
oder sollte ich einfach einen hinweis schreiben?
  | | Kein öffentlicher Schreibzugriff erlaubt, bitte erst registrieren!
hessebou
Mitglied
Junior Boarder
Beiträge: 5
graphgraph
 
Re:sporadischer fehler - 05/07/2007 23:28 habe nun ne möglichkeit gefunden:

Code:

  <input type="hidden" name="submit" value="0">



ob es allerdings noch andere lösungen gibt,
weil dies evtl. nicht die feine englische art ist?
oder kann man diesen zusatz so lassen?
  | | Kein öffentlicher Schreibzugriff erlaubt, bitte erst registrieren!
Cougar
Admin
Admin
Beiträge: 725
graph
 
Re:sporadischer fehler - 06/07/2007 18:54 Hallo,

ups, entschuldige das ich den string für die Suchabfrage auch geändert habe. War so nicht meine Absicht.

Das ist ja echt komisch das da ein Unterschied zwischen der Enter-Taste und dem Submit Button ist. Hatte bisher noch nie einen Unterschied bemerkt.

Zu deiner Lösung mit dem hidden Feld: Ich kann keinen negativen Effekt dabei sehen. Wenn es funktioniert.

Mir fällt im Moment auch nichts ein, wie du das anderes machen kannst. Denn wie ich schon sagte hatte ich das Problem auch noch nie.

mfg,
Cougar

  | | Kein öffentlicher Schreibzugriff erlaubt, bitte erst registrieren!
spacer
header


spacer
Preisliste
Preisliste

B4YCounter 4.x.x

Lizenz der kommerziellen Nutzung
auf einer Domain: 12,00 €

Lizenz für eine Copyright-freie Version: 12,00 €

B4YFormmailer 2.x.x

Lizenz für eine Copyright-freie Version: 10,00 €

B4YVotum 1.x.x

Lizenz für eine Copyright-freie Version: 5,00 €


Mehr Informationen findest du auf der Seite "Preisliste und Lizenzinfo".

Du kannst aber auch sofort das Scripte Lizenz Bestellformular nutzen um deine gewünschte Lizenz zu anzufordern.
Forum - letzte Themen
PayPal Spende
Findest du die hier angebotenen Scripte und dessen Support toll?
Dann kannst du mir per PayPal eine kleine Spende zukommen lassen.
Ich würde mich freuen.


Vielen Dank!
Social Bookmark
Add to: Mr. Wong Add to: Webnews Add to: Icio Add to: Oneview Add to: Kledy.de Social Bookmarking Add to:  FAV!T Social Bookmarking Add to: Favoriten.de Add to: Seekxl Add to: Social Bookmark Portal Add to: BoniTrust Add to: Power-Oldie Add to: Bookmarks.cc Add to: Newskick Add to: Newsider Add to: Linksilo Add to: Readster Add to: Yigg Add to: Linkarena Add to: Digg Add to: Del.icoi.us Add to: Reddit Add to: Jumptags Add to: Upchuckr Add to: Simpy Add to: StumbleUpon Add to: Slashdot Add to: Netscape Add to: Furl Add to: Yahoo Add to: Blogmarks Add to: Diigo Add to: Technorati Add to: Newsvine Add to: Blinkbits Add to: Ma.Gnolia Add to: Smarking Add to: Netvouz Add to: Folkd Add to: Spurl Add to: Google
Social Bookmarking