Foros del Web » Programando para Internet » PHP »

PHP OO Convertir Mayúsculas con Acentos

Estas en el tema de Convertir Mayúsculas con Acentos en el foro de PHP en Foros del Web. Hola, tengo un formulario en html que envia los datos a traves de php a Base de Datos PhpMyAdmin, y el mismo script que envia ...
  #1 (permalink)  
Antiguo 31/01/2014, 11:23
 
Fecha de Ingreso: noviembre-2013
Mensajes: 15
Antigüedad: 10 años, 5 meses
Puntos: 0
Pregunta Convertir Mayúsculas con Acentos

Hola, tengo un formulario en html que envia los datos a traves de php a Base de Datos PhpMyAdmin, y el mismo script que envia los datos a MyAdmin envia un correo al usuario.
Con la función utf8 y mb_strtoupper, convierte todos los caracteres a mayusculas, con acentos y demás caracteres especiales. Sin embargo en el correo de respuesta no hace la conversión, alguien puede ayudarme?
Gracias.

Este es el script completo:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Insercio</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>

<title>Dades enviades</title>

<?php
$conexion=mysql_connect("localhost","base datos","contraseña")
or header('Location: pagina web');
mysql_select_db("base datos",$conexion)
or die("Problemes en la selecció de la base de dades");

mysql_set_charset('utf8');

$Nom=mb_strtoupper($_POST[Nom],'utf8');
$Cognoms=mb_strtoupper($_POST[Cognoms],'utf8');
$Dni=strtoupper($_POST[Dni]);
$Naixement=($_POST[Naixement]);
$Club=mb_strtoupper($_POST[Club],'utf8');
$Poblacio=mb_strtoupper (addslashes($_POST[Poblacio]),'utf8');
$Telefon=($_POST[Telefon]);
$Correu=strtolower($_POST[Correu]);
$Modalitat=($_POST[Modalitat]);
$Talla=($_POST[Talla]);
$Color=strtoupper($_POST[Color]);

mysql_query ("insert into Tabla(Nom,Cognoms,Dni,Naixement,Club,Poblacio,Tele fon,Correu,Modalitat,Talla,Color) values
('$Nom','$Cognoms','$Dni','$Naixement','$Club','$P oblacio','$Telefon','$Correu','$Modalitat','$Talla ','$Color')",$conexion)
or die("Problemes en el registre. ".mysql_error());

$mensaje = "Dades d'inscripció:

Nom: $Nom
Cognoms: $Cognoms
Dni: $Dni
Any Naixement: $Naixement
Club: $Club
Telèfon: $Telefon
Població: $Poblacio
Modalitat: $Modalitat

Si no son correctes dirigeix-te a: [email protected]";

$headers = 'From: Remitente <[email protected]>';
if( mail( $Correu, 'Inscripcions 2014', $mensaje, $headers) ) {
echo "Correu enviat<br />";
} else {
echo "No se pudo enviar el correo<br />";
}

echo "Envio información correcto";


mysql_close($conexion);
header('Location: pagina web');
?>
</body>
</html>
  #2 (permalink)  
Antiguo 31/01/2014, 13:23
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: Convertir Mayúsculas con Acentos

En la cabecera del mensaje, asígnale la codificación UTF-8.

Código PHP:
Ver original
  1. $headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #3 (permalink)  
Antiguo 31/01/2014, 14:13
 
Fecha de Ingreso: noviembre-2013
Mensajes: 15
Antigüedad: 10 años, 5 meses
Puntos: 0
Pregunta Respuesta: Convertir Mayúsculas con Acentos

Así tampoco funciona

$headers = 'Content-type: text/html; charset=utf-8' , 'From: Remitente <[email protected]>';

Puesto que tengo el headers 'From'
  #4 (permalink)  
Antiguo 31/01/2014, 14:16
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: Convertir Mayúsculas con Acentos

¿Y así?

Código PHP:
Ver original
  1. $headers = 'MIME-Version: 1.0' . "\r\n";
  2. $headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
  3. $headers .= 'From: Remitente <[email protected]>';
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand

Última edición por Alexis88; 31/01/2014 a las 14:22
  #5 (permalink)  
Antiguo 31/01/2014, 14:52
 
Fecha de Ingreso: noviembre-2013
Mensajes: 15
Antigüedad: 10 años, 5 meses
Puntos: 0
Pregunta Respuesta: Convertir Mayúsculas con Acentos

Con este último código si que lo convierte, pero deja todo el texto seguido, en lugar de filas, y elimina las letras acentuadas de los enunciados.
Seguiré buscando.
  #6 (permalink)  
Antiguo 31/01/2014, 16:10
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: Convertir Mayúsculas con Acentos

El texto lo puedes ordenar a tu conveniencia, solamente usar saltos de línea como lo hice en el ejemplo. Lo de las letras acentuadas, pues creo que debería ser al revés, puesto que con esta codificación, se permiten caracteres especiales, como las letras acentuadas.

Revisa bien el código y guíate del manual oficial, saludos.
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand

Etiquetas: acentos, formulario, html, mysql, select, sql, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:49.