[SOLUCIONADO] Función en PHP

Iniciado por 5TU4RT, Junio 21, 2012, 12:04:54 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Junio 21, 2012, 12:04:54 PM Ultima modificación: Marzo 27, 2014, 05:47:59 PM por Expermicid
Muy buenas... como algunoss saben hace rato ya, estaba aprendiendo a programar en este magnifico lenguaje (PHP)... Lo deje a un lado por motivos personales, pero estoy devuelta...

Se me vino a la cabeza hacer un proyectico, Un convertidor de string a asccii... como me lo estaba imaginando, seria un poco tedioso llenar el codigo de condiciones, con todo el abecedario xDDD

he llegado a este punto y no es que no pueda seguir, si no que como lo llevo la unica manera que se me ocurre, seria cojer letra por letra y hacerle la condicion a cada una...

ya separe cada letra de la variable como lo ven en la imagen:



este es el code que llevo ahsta ahora!

Código: php
<?php
$h = '104';
$o = '111';
$l = '76';
$a = '97';
$ii = 0;
if(isset($_POST['button']))
{
$longitud = $string;
$lala = strlen($longitud); // longitud del string
echo "<br>";

while ($ii <= $lala)
{
$letra = '';
$letra = substr ($string, $ii, 1); // devuelve un caracter
echo $letra;
echo "<br>";
$ii++;
}

}
?>

<form name="form1" method="post" action="">
  <p>String:
    <input type="text" name="string">
</p>
  <p>Ascii:
    <input type="text" name="ascii" value="<?php echo $ascii; ?>" />
</p>
  <p>
    <input type="submit" name="button" value="Convertir">
  </p>
</form>


Ej: si "A" = A Entonces A --> 65 (65 valor en ascii)   Entonces asi me tocaria hacer letra por letra todo el abecedario e incluir mayusculas denuevo todo el abecedario xDD un poco larguito..

Pero ps les pregunto porque me imagino que debe haber alguna funcion en PHP que busque la conincidencia de nombres, con los nombres de las variables...

Espero me hayan entendido..

Salu2


EDIT:

Bueno, ya terminé el conversor, aqui se los muestro  ;D

Código: php
<?php
/* Coded By 5TU4RT */
$ii = 0;
if(isset($_POST['button']))
{
$longitud = $string;
$lala = strlen($longitud); // longitud del string

while ($ii < $lala)
{
$letra = '';
$letra = substr ($string, $ii, 1); // devuelve un caracter
$ascii = ord($letra);
$total = $total.','.$ascii;
$ii++;
}
$final = substr ($total, 1);
}
?>

<form name="form1" method="post" action="">
  <p>String:
    <input type="text" name="string">
</p>
  <p>Ascii:
    <input name="ascii" type="text" value="<?php echo $final; ?>">
</p>
  <p>
    <input type="submit" name="button" value="Convertir">
  </p>
</form>


Muchisimas gracias a todos por aclarar mis dudas, que detallazo...


SALU2
Si se puede imaginar... se puede programar.!

Si compadre si la memoria no me falla es con la funcion ord ( )

Saludo :P
No tienes permitido ver enlaces. Registrate o Entra a tu cuenta


Llaman traidor a la persona que evito que caiga el foro, gente bruta!



hola 5TU4RT.

Yo creo que no seria muy bueno hacer una variable para cada letra del abecedario.

si tu ya pudiste hacer de agarrar letra por letra, usa la funcion ORD que devuelve el ascii de un caracter.
Si se aplica a un string solo devulve el ascii del primer caracter.

Prueba con eso y cuentanos.

Saludos

Ahhhhhhhh... ok!!! me estaba complicando entonces... que weba xDDD

Muchas Gracias, no conocia esa función!!!


Salu2
Si se puede imaginar... se puede programar.!

Estimado,

Un ejemplo de como implementarlo:

Código: text
<?php

$string ="This is an example string with a few specialy symbols: *?%&/äö$ü!";

for($i = 0; $i != strlen($string); $i++)
{

     $asciiString .= "&#".ord($string[$i]).";";

}

$asciiCode = str_replace("&", "&amp;", $asciiString);

echo "String in ASCII:<br>";

echo $asciiString;

echo "<br>The code:<br>";

echo $asciiCode;

?>


Fuente: No tienes permitido ver enlaces. Registrate o Entra a tu cuenta

Otro Ejemplo:

Código: text
function string_to_ascii($string)
{
    $ascii = NULL;

    for ($i = 0; $i < strlen($string); $i++)
    {
    $ascii += ord($string[$i]);
    }

    return($ascii);
}


Fuente: No tienes permitido ver enlaces. Registrate o Entra a tu cuenta

Hace algún tiempo hice un conversor con html y js para realizar inyecciones sql: No tienes permitido ver enlaces. Registrate o Entra a tu cuenta

Código: text
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
"http://www.w3.org/TR/REC-html40/loose.dtd">
<html>
<head>
<title>Convertidor de texto a ASCII</title>
<script language="javascript">

var browsertype = "IE4x"
if (document.all){browsertype = "IE4x"}else{}
if (document.layers){browsertype = "NN4x"}else{}
if (navigator.appVersion.indexOf("MSIE 5", 0) != -1){browsertype = "IE5xDOM"}else{}
if (navigator.appName == "Netscape" &&
parseInt(navigator.appVersion) >= 5){browsertype = "NN6xDOM"}else{}

letra = new Array()
conversion = new Array()

letra[1] = "a"; conversion[1] = "97,"
letra[2] = "b"; conversion[2] = "98,"
letra[3] = "c"; conversion[3] = "99,"
letra[4] = "d"; conversion[4] = "100,"
letra[5] = "e"; conversion[5] = "101,"
letra[6] = "f"; conversion[6] = "102,"
letra[7] = "g"; conversion[7] = "103,"
letra[8] = "h"; conversion[8] = "104,"
letra[9] = "i"; conversion[9] = "105,"
letra[10] = "j"; conversion[10] = "106,"
letra[11] = "k"; conversion[11] = "107,"
letra[12] = "l"; conversion[12] = "108,"
letra[13] = "m"; conversion[13] = "109,"
letra[14] = "n"; conversion[14] = "110,"
letra[15] = "o"; conversion[15] = "111,"
letra[16] = "p"; conversion[16] = "112,"
letra[17] = "q"; conversion[17] = "113,"
letra[18] = "r"; conversion[18] = "114,"
letra[19] = "s"; conversion[19] = "115,"
letra[20] = "t"; conversion[20] = "116,"
letra[21] = "u"; conversion[21] = "117,"
letra[22] = "v"; conversion[22] = "118,"
letra[23] = "w"; conversion[23] = "119,"
letra[24] = "x"; conversion[24] = "120,"
letra[25] = "y"; conversion[25] = "121,"
letra[26] = "z"; conversion[26] = "122,"

letra[27] = "A"; conversion[27] = "65,"
letra[28] = "B"; conversion[28] = "66,"
letra[29] = "C"; conversion[29] = "67,"
letra[30] = "D"; conversion[30] = "68,"
letra[31] = "E"; conversion[31] = "69,"
letra[32] = "F"; conversion[32] = "70,"
letra[33] = "G"; conversion[33] = "71,"
letra[34] = "H"; conversion[34] = "72,"
letra[35] = "I"; conversion[35] = "73,"
letra[36] = "J"; conversion[36] = "74,"
letra[37] = "K"; conversion[37] = "75,"
letra[38] = "L"; conversion[38] = "76,"
letra[39] = "M"; conversion[39] = "77,"
letra[40] = "N"; conversion[40] = "78,"
letra[41] = "O"; conversion[41] = "79,"
letra[42] = "P"; conversion[42] = "80,"
letra[43] = "Q"; conversion[43] = "81,"
letra[44] = "R"; conversion[44] = "82,"
letra[45] = "S"; conversion[45] = "83,"
letra[46] = "T"; conversion[46] = "84,"
letra[47] = "U"; conversion[47] = "85,"
letra[48] = "V"; conversion[48] = "86,"
letra[49] = "W"; conversion[49] = "87,"
letra[50] = "X"; conversion[50] = "88,"
letra[51] = "Y"; conversion[51] = "89,"
letra[52] = "Z"; conversion[52] = "90,"

letra[53] = "0"; conversion[53] = "48,"
letra[54] = "1"; conversion[54] = "49,"
letra[55] = "2"; conversion[55] = "50,"
letra[56] = "3"; conversion[56] = "51,"
letra[57] = "4"; conversion[57] = "52,"
letra[58] = "5"; conversion[58] = "53,"
letra[59] = "6"; conversion[59] = "54,"
letra[60] = "7"; conversion[60] = "55,"
letra[61] = "8"; conversion[61] = "56,"
letra[62] = "9"; conversion[62] = "57,"

letra[63] = " "; conversion[63] = "32,"
letra[64] = "\!"; conversion[64] = "33,"
letra[65] = "\""; conversion[65] = "34,"
letra[66] = "\#"; conversion[66] = "35,"
letra[67] = "\$"; conversion[67] = "36,"
letra[68] = "\%"; conversion[68] = "37,"
letra[69] = "\&"; conversion[69] = "38,"
letra[70] = "\'"; conversion[70] = "39,"
letra[71] = "\("; conversion[71] = "40,"
letra[72] = "\)"; conversion[72] = "41,"
letra[73] = "\*"; conversion[73] = "42,"
letra[74] = "\+"; conversion[74] = "43,"
letra[75] = "\,"; conversion[75] = "44,"
letra[76] = "\-"; conversion[76] = "45,"
letra[77] = "\."; conversion[77] = "46,"
letra[78] = "\/"; conversion[78] = "47,"
letra[79] = "\:"; conversion[79] = "58,"
letra[80] = "\;"; conversion[80] = "59,"
letra[81] = "\<"; conversion[81] = "60,"
letra[82] = "\="; conversion[82] = "61,"
letra[83] = "\>"; conversion[83] = "62,"
letra[84] = "\?"; conversion[84] = "63,"
letra[85] = "\@"; conversion[85] = "64,"
letra[86] = "\["; conversion[86] = "91,"
letra[87] = "\\"; conversion[87] = "92,"
letra[88] = "\]"; conversion[88] = "93,"
letra[89] = "\^"; conversion[89] = "94,"
letra[90] = "\_"; conversion[90] = "95,"
letra[91] = "\`"; conversion[91] = "96,"
letra[92] = "\{"; conversion[92] = "123,"
letra[93] = "\|"; conversion[93] = "124,"
letra[94] = "\}"; conversion[94] = "125,"
letra[95] = "\~"; conversion[95] = "126,"

function preguntame(){
if (document.convertirformulario.texto.value == ""){
alert("Primero ingresa el texto a convertir"); return;}else{};
var ElTexto = document.convertirformulario.texto.value;
var ElConvierte = "";
var Tag = false;

for(i=0; i<=ElTexto.length-1; i++){
    andresg888 = "zzz";
    mmrg5486 = ElTexto.charAt(i);
    if((mmrg5486 == "\<") && (document.convertirformulario.cb.checked)){Tag = true}else{}
    for(j=1; j<=95; j++){
    if (mmrg5486 == letra[j]){andresg888 = conversion[j];}else{}
    }

    if (andresg888 == "zzz"){andresg888 = mmrg5486}else{};

    if (Tag){
        andresg888 = mmrg5486;
        if(mmrg5486 == "\>"){Tag = false}else{}
    }else{}

    ElConvierte += andresg888;
    }

document.convertirformulario.ascii.value = ElConvierte;
}

function ejemplo1(){
ejemplo = "Esto es un texto, lo convertiremos y veremos que pasa. Observe el cuadro de abajo...\n"

document.convertirformulario.texto.value = ejemplo;
preguntame();
}

function limpiame(){
document.convertirformulario.texto.value = "";
document.convertirformulario.ascii.value = "";
}

</script>

<style type="text/css">
.ta {font-family:Times New Roman,serif; font-size:13px; font-style:normal; font-weight:normal}
body,td,th {
color: #CCC;
}
body {
background-color: #000;
}
</style>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head>

<body topmargin="0" marginheight="0"><center>

<p></p>
<p><b> Convertidor de texto a "char" orientado a inyecciones SQL.</b><br></p>
<table width="600" border="0" bgcolor="orange" cellpadding="15" cellspacing="0">
  <tr>
<td>
<table width="570" border="0" bgcolor="#0F0" cellpadding="10" cellspacing="0">
<tr>
<td class='ta'><br>
<script language="JavaScript"><!--
document.write("<form name='convertirformulario'>");
if(browsertype == "NN4x"){
document.write("<b>Escriba el texto en el siguiente cuadro:</br><textarea class='ta' cols='50' rows='6' name='texto' wrap='virtual'></textarea>");
}else{
document.write("<b>Escriba el texto en el siguiente cuadro:<textarea class='ta' cols='105' rows='6' name='texto' wrap='virtual'></textarea>");
}
document.write("<br>\n");
document.write("<br><center><b>Este convertidor no funcionar&aacute; con etiquetas o c&oacute;digos de lenguajes de programaci&oacute;n.</b></center><br>\n");
document.write("<center><input type='button' value='Convertir' onclick='preguntame();'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type='button' value='Ejemplo' onclick='ejemplo1();'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type='button' value='Limpiar cuadro' onclick='limpiame();'></center>");
document.write("<br>\n");
if(browsertype == "NN4x"){
document.write("<b>El texto convertido aparecer&aacute; aqu&iacute;:<textarea class='ta' cols='50' rows='6' name='ascii' wrap='virtual'></textarea>");
}else{
document.write("<b>El texto convertido aparecer&aacute; aqu&iacute;:<textarea class='ta' cols='105' rows='6' name='ascii' wrap='virtual'></textarea>");
}
document.write("</form>\n");
document.write("<br><center><b>-- HYPERNETHOST & SECURITY-PENTEST --</b></center><br>\n");
//-->
</script></td></tr></table>
</td></tr></table>
</body>
</html>


Espero te sirva de algo los ejemplos.

Saludos!.

Claro que si Andrés, me serviran de mucho para este y para mis futuros proyectos tambien :)

Que detallazo...


SALu2
Si se puede imaginar... se puede programar.!

Ahi andres dio en el clavo =D aun no me olvide Php  :'( algo gratificante.


Saludos
No tienes permitido ver enlaces. Registrate o Entra a tu cuenta


Llaman traidor a la persona que evito que caiga el foro, gente bruta!



Ya lo terminé... Gracias a los que me aclararon dudas!
ahi edito mi post y les muestro el code completo... acepto criticas constructivas!!!


Salu2
Si se puede imaginar... se puede programar.!

De Nada ¬¬


Saludos,
Dedalo
No tienes permitido ver enlaces. Registrate o Entra a tu cuenta