Zum Inhalt springen

Buchstabenwortwert (BWW) Script

Mit diesem kleinen PHP-Script kann der Buchstabenwortwert und die Quersumme eines beliebigen Wortes errechnet werden. Dies wird oft bei Mystery- oder sogenannten Unknown Geocaches benötigt, um jeweilige Antworten in Zahlen für die finale Koordinaten-Formel zu errechnen. Das Script kann in leicht ergänzter Form bei uns online getestet werden.

Funktionsweise und Besonderheiten

Jedem Buchstaben wird ein numerischer Wert zugeordnet. So ist z.B. A=1, B=2, C=3 usw. Zahlen bleiben Zahlen und somit ist 1=1, 2=2 usw. Dieses Skript bietet allerdings die Möglichkeit Umlaute verschieden zu behandeln. In der Eigenwert-Variante bekommen Umlaute ihre eigenen Werte. So ist z.B. ä=27, ö=28 usw. Bei der Doppelwert-Variante werden Umlaute wie zwei Buchstaben behandelt, d. H. ein "ä" bekommt die Werte von a und e (ae = 1 + 5 = 6) und hat somit nur noch einen numerischen Wert von 6. Je nach Mystery-Owner wird dies anders gehandhabt - das Script jedoch bietet die Funktionsweise von beiden Möglichkeiten.

Voraussetzungen

Die Script-Code

<?php
  
//set form settings
  
$umlauttype 'einzel';
  
$inputtext '';
  if (isset(
$_POST['submit'])) {
    
$inputtext strip_tags(trim($_POST['inputtext']));
    
$umlauttype $_POST['umlautwert'];
  }
?>

<h3>Buchstabenwortwert (BWW) Rechner</h3>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>#eingabe" method="post" accept-charset="UTF-8"> 
  <fieldset lang="de" id="eingabe">
    <legend>Buchstabenwortwert</legend>
    <p><strong>Umlaut-Berechnungsart:</strong><br />
    <input type="radio" name="umlautwert" value="einzel" <?php if ($umlauttype == 'einzel') { echo "checked="checked""; } ?> /> Eigenwert <small>(ä=27, ö=28, ü=29, ß=30)</small>
    <input type="radio" name="umlautwert" value="doppel" <?php if ($umlauttype == 'doppel') { echo "checked="checked""; } ?> /> Doppelwert <small>(ae, oe, ue, ss)</small></p>
    <label for="inputtext">Eingabetext:</label>
    <input type="text" name="inputtext" id="inputtext" value="<?php echo $inputtext?>" maxlength="40" size="28" /> 
    <input class="submit" name="submit" type="submit" value="Berechnen" />
  </fieldset>
</form>

<?php
function utf8_array_decode($input) { 
    
$return = array(); 
    foreach (
$input as $key => $val) { 
        if (
is_array($val)) { 
            
$return[$key] = utf8_array_decode($val); 
        } else { 
            
$return[$key] = utf8_decode($val); 
        } 
    } 
    return 
$return;           
}

$inputtext strip_tags($_POST['inputtext']);

if (!empty(
$inputtext)) {
  
$cleantext preg_replace('/[^A-Za-zäüößÄÜÖ0-9]/'''$inputtext);
  
$cleantext utf8_decode($cleantext);
  
$cleantext mb_strtolower($cleantext);

  
$letters = array(=> 'a'=> 'b'=> 'c'=> 'd'=> 'e'=> 'f'=> 'g'=> 'h'=> 'i'10 => 'j'11 => 'k'12 => 'l'13 => 'm'14 => 'n'15 => 'o'16 => 'p'17 => 'q'18 => 'r'19 => 's'20 => 't'21 => 'u'22 => 'v'23 => 'w'24 => 'x'25 => 'y'26 => 'z'27 => 'ä'28 => 'ö'29 => 'ü'30 => 'ß');

  
$cleanletters utf8_array_decode($letters);

  for (
$i=0$i strlen($cleantext); $i++) {
    
$key array_search($cleantext[$i], $cleanletters);
    if (
is_numeric($cleantext[$i])) {
      
$key $cleantext[$i];
    }
    
    
//ae = 6, oe = 20, ue = 26, ss = 38
    
if ($umlauttype == 'doppel') {
      if (
$cleantext[$i] == utf8_decode('ä')) { $key 6; }
      if (
$cleantext[$i] == utf8_decode('ö')) { $key 20; }
      if (
$cleantext[$i] == utf8_decode('ü')) { $key 26; }
      if (
$cleantext[$i] == utf8_decode('ß')) { $key 38; }
    }

    if (
is_numeric($key)) {
      
$sum += $key;
    }
  }

  
$sumstring strval($sum);
  for (
$i=0$i strlen($sumstring); $i++) {
    
$quersum += $sumstring[$i];
  }

  if (
$sum ) {
    echo 
"<p><strong>Buchstabenwortwert (BWW): ".$sum."<br />";
    echo 
"Quersumme (QS): ".$quersum."</strong></p>";
  }
}
?>

Download

Hier könnt ihr das oben gelistete PHP-Script herunterladen. Es ist vollständig funktionsfähig - Einfach auf euren Server hochladen und im Browser aufrufen. Verbesserungsvorschläge und Anmerkungen sind willkommen.
buchstabenwortwert-rechner.zip


3 Kommentare



[3] Gravatar2
derMönch sagte ...
22. März 2012, 13:26
Website von derMönch

Wieder mal ein interessanter Beitrag!
Ich habe mir schon etwas ähnlich zusammen gebastelt, allerdings das mit der utf_8 - Funktion ist wirklich klasse & neu für mich.

In dem Sinne: Danke für's Zeigen und Grüße an Euch,
Mönch (Sebastian)

[2] Gravatar1
seven sagte ...
11. März 2012, 11:36
Website von seven

Hallo xxThunderXx,
nun ja, du musst natürlich eigenen Webspace haben das PHP unterstützt. Wenn du das hast oder deinen eigenen lokalen Server, dann lädst du das Script (bww.php) nach dem Download und entpacken via FTP auf deinen Server. Danach rufst du das Script in deinem Browser auf, z.B. http://www.meinserver.de/bww.php ... Wenn du weitere Fragen hast kannst du mich gerne via dem Kontaktformular hier anfragen. Wenn du keinen eigenen Webspace hast, dann kannst du unsere online Version benutzen. Siehe den Link im Text oben.
lg tina

[1] Gravatar0
xXThunderXx sagte ...
11. März 2012, 11:32

Habt ihr auch ne kleine Anleitung wie man das Skript verwendet ? Bin am PC nicht so begabt...