kronoszx
6/4/2015 - 4:00 PM

Traducir usando google

Traducir usando google

<!-- tr.google.php -->
<?
/*
------------------------------------------------------------------- Script usado para traducir textos en diferentes idiomas usando el motor de translate.google.com como fuente de búsqueda.

-------------------------------------------------------------------
*/ $traduccion = '-';
// si el texto está definido, tenemos el texto a traducir
if ($text) {
	$traduccion = traducir($text,$langpair);
}
?>
<html>
<head>
	<title>tr.google.php</title> <style>
	<!--
	body {margin-right: 1em; margin-left: 1em;}
-->
</style>
</head> <body bgcolor="#ffffff" text="#000000" link="#0000cc" vlink="551a8b"
alink="#ff0000"> <table width="100%" border=0 cellspacing=0 cellpadding=1>
<tr bgcolor=#ffffff>
	<td>
		<form method=post>
			<font face="arial,sans-serif" size=-1>Traducir texto:</font>
			<br>
			<textarea name=text rows=5 cols=45 wrap=PHYSICAL><? echo $text; ?></textarea><br>
			<font face="arial,sans-serif" size=-1>De</font>
			<select name=langpair>
				<option value="en|de">Ingles a Aleman</option>
				<option value="en|es">Ingles a Español</option>
				<option value="en|fr">Ingles a Frances</option>
				<option value="en|it">Ingles a Italiano</option>
				<option value="en|pt" selected>Ingles a Português</option>
				<option value="de|en">Aleman a Ingles</option>
				<option value="de|fr">Aleman a Frances</option>
				<option value="es|en">Español a Ingles</option>
				<option value="fr|en">Frances a Ingles</option>
				<option value="fr|de">Frances a Aleman</option>
				<option value="it|en">Italiano a Ingles</option>
				<option value="pt|en">Português a Ingles</option>
			</select> <input type=hidden name=hl value="en">
			<input type=hidden name=ie value="Unknown">
			<input type=hidden name=oe value="ASCII">
			<input type=submit value=" Traducir ">
		</form>
	</td></tr> <tr><td>
	<br><br>
	<font face="arial,sans-serif" size=-1>
		Texto traducido:<Br>
		<pre><? echo $traducion; ?></pre>
	</font>
</table> </body>
</html><?
function traducir($text,$langpair) {
	// definición de variables
	$host = 'translate.google.com';
	$vars = "hl=en&ie=Unknown&oe=ASCII&langpair=$langpair&text=" . urlencode($text);
	$url = "/translate_t?$vars"; // efectuando conexión con google
	$fp = fsockopen ($host, 80, $errno, $errstr, 30);
	if (!$fp) {
		echo "Ocurrió un error al intentar conectar con $host: $errstr ($errno)<br>n";
		exit;
	} else {
		$addinfo .= "Accept-Language: enrnAccept-Charset: iso-8859-1,*,utf-8rn";
		fputs ($fp, "GET $url HTTP/1.1rnHost: $hostrn$addinforn");
		while (!feof($fp)) {
			$html .= fgets ($fp,128);
		}
		fclose ($fp);
	}
	// eliminando los saltos de lineas del resultado
	$html = ereg_replace("n"," ",$html); // capturando el texto traducido
	ereg("name=q rows=[0-9]* cols=[0-9]* wrap=PHYSICAL>(.*)</textarea>",$html,$salida);
	$traduccion = $salida[1];
	$traduccion = ereg_replace(">.*$","",$traduccion);
	return($traduccion);
}
?>