Si necesitas personalizar para más de dos claves, lo mejor es usar la funcion
switch(), asi te evitas de estar llenandote de if...else...'s. En tu codigo, esta funcion quedaría así:
Código PHP:
<?
//CLAVE 1: "XXXXX"
//CLAVE 2: "ZZZZZZZ"
switch($_POST["clave"]) {
case "XXXXX": echo "esta es la clave 1"; break;
case "ZZZZZ": echo "esta es la clave 2"; break;
default: echo "error, la clave es desconocida"; break;
}
?>
Además, te recomiendo leerte el manual de PHP en lo que refiere a las
contantes. Si llamas a algun elemento de un array (como $_POST) de esta forma: $_POST[clave], en realidad estas llamando a un elemento que tenga como
key el valor la constante
clave, si no esta definda, el script funciona, aunque no es lo correcto. Debes usar siempre comillas cuando lo que estas escribiendo deba ser interpretado
tal y como lo escribes. Te pongo un ejemplo:
Código PHP:
<?php
//Creas un array
$array = array(
"primero"=>"Este es el contenido del primer elemento"
);
//Imprime el elemento
echo '<br />Esto es sin comillas: '.$array[primero]."\n";
echo '<br />Esto es con comillas: '.$array["primero"]."\n";
echo "<br />Esto se ha impreso bien, ya que la constante primero no es definida, y el
servidor interpreta primero como si fuera \"primero\"<br /><br />";
echo "<br />Ahora veamos lo que pasa al definir la constante primero<br /><br />";
define('primero','Valor');
//E imprimamos de la misma manera que la primera vez:
echo '<br />Esto es sin comillas: '.$array[primero]."\n";
echo '<br />Esto es con comillas: '.$array["primero"]."\n";
echo '<br />Nota que ahora el uso de $array[primero] no imprime ningun resultado, ya que
es como que en realidad estuvieras llamando a $array["Valor"], que no esta definido...<br
/><br />';
?>
</STRONG>
Un saludo,