Foros del Web » Programando para Internet » PHP »

valor $mapAddress repetido

Estas en el tema de valor $mapAddress repetido en el foro de PHP en Foros del Web. Puesto que tengo una base de datos que no me acepta ni las Ñ ni los acentos he optado por hacer esto para solucionarlo Código ...
  #1 (permalink)  
Antiguo 29/04/2012, 11:48
lucasabogado
Invitado
 
Mensajes: n/a
Puntos:
valor $mapAddress repetido

Puesto que tengo una base de datos que no me acepta ni las Ñ ni los acentos he optado por hacer esto para solucionarlo

Código PHP:
<?php $cat_name $mapAddress['State']; { ?>
<?php    
if ($cat_name == 'Almeria')  ?>
<?php    
echo $mapAddress['state'];  ?>
<?php    $mapAddress
['state'] = 'Almer&iacute;a';  ?>
<?php 
?>

<?php $cat_name $mapAddress['State']; { ?>
<?php    
if ($cat_name == 'Castellon')  ?>
<?php    
echo $mapAddress['state'];  ?>
<?php    $mapAddress
['state'] = 'Castell&oacute;n';  ?>
<?php 
?>
el problema que tengo es que introduzca la provincia que sea siempre me da de resultado la ultima en este caso Castellon

que le puedo poner para que sea independiente cada una ?
  #2 (permalink)  
Antiguo 29/04/2012, 12:43
Avatar de santris  
Fecha de Ingreso: agosto-2009
Ubicación: Sant Feliu de Llobregat
Mensajes: 955
Antigüedad: 10 años, 6 meses
Puntos: 66
Respuesta: valor $mapAddress repetido

Prueba esto es más fácil:

Código PHP:
$str ='castellón';
echo 
htmlentities(htmlentities($str)); 
saludos,
__________________
Tu álbum de cromos online!!
  #3 (permalink)  
Antiguo 29/04/2012, 17:40
lucasabogado
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: valor $mapAddress repetido

Pero en que linea lo pongo o lo sustituyo porque hasta ahí no llego

Lo he probado asi y no funciona


Código PHP:
<?php 
if ($cat_name == 'A Coruna')
$str 'A Coruña'
echo 
htmlentities(htmlentities($str));
?>

gracias
  #4 (permalink)  
Antiguo 29/04/2012, 18:13
Avatar de santris  
Fecha de Ingreso: agosto-2009
Ubicación: Sant Feliu de Llobregat
Mensajes: 955
Antigüedad: 10 años, 6 meses
Puntos: 66
Respuesta: valor $mapAddress repetido

Cita:
Iniciado por lucasabogado Ver Mensaje
Pero en que linea lo pongo o lo sustituyo porque hasta ahí no llego

Lo he probado asi y no funciona


Código PHP:
<?php 
if ($cat_name == 'A Coruna')
$str 'A Coruña'
echo 
htmlentities(htmlentities($str));
?>

gracias
NOO!! lo que tienes que hacer es insertar en la base de datos el nombre codificado y luego decodificarlo cuando lo recuperas:

O lo insertas codificado en utf-8 que es lo más normal o lo insertas como entidad html y cuando lo recuperas ya no debes hacer nada más.

No insertes en la bd datos erroneos, si un nombre lleva acento debes insertarlo con acento, pero codificado.
__________________
Tu álbum de cromos online!!
  #5 (permalink)  
Antiguo 30/04/2012, 04:05
lucasabogado
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: valor $mapAddress repetido

No entiendo !! porque en esto estoy muy verde

pon un ejemplo por favor

muchas gracias por tu paciencia


saludos
  #6 (permalink)  
Antiguo 30/04/2012, 04:08
Avatar de santris  
Fecha de Ingreso: agosto-2009
Ubicación: Sant Feliu de Llobregat
Mensajes: 955
Antigüedad: 10 años, 6 meses
Puntos: 66
Respuesta: valor $mapAddress repetido

Cita:
Iniciado por lucasabogado Ver Mensaje
No entiendo !! porque en esto estoy muy verde

pon un ejemplo por favor

muchas gracias por tu paciencia


saludos
como insertas los valores en la bd?? los insertas directamente??
__________________
Tu álbum de cromos online!!
  #7 (permalink)  
Antiguo 30/04/2012, 04:19
lucasabogado
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: valor $mapAddress repetido

Los inserto a traves de selects

Código PHP:
<div>
<div class="input select">
<label><?php _e("Pais ","ce");?><span class="red1 bold georgia16"> *</span></label>
<p class="left styled-select">
<select name="tgt_country" id="tgt_country"  class="validate[required]" >
<option value="">Seleccione...</option>
</select>

</p></div>

<div class="input select">
<label><?php _e("Provincia ","ce");?><span class="red1 bold georgia16"> *</span></label>
<p class="left styled-select">
<select name="tgt_state" id="tgt_state"  value="<?php if(isset ($ads_data["tgt_state"])) echo $ads_data["tgt_state"]; ?>" class="validate[required]" >
<option value="">Seleccione...</option>
</select>
</p></div>



<div class="alinear">
<label><?php _e("Poblacion ","ce");?><span class="red1 bold georgia16"> *</span></label>
<p class="styled-select2">
<select name="tgt_address" id="tgt_address" value="<?php if(isset ($ads_data["tgt_address"])) echo $ads_data["tgt_address"]; ?>" class="validate[required]">
<option value="">Seleccione...</option>
</select>    
</p></div>

</div>
Gracias
  #8 (permalink)  
Antiguo 30/04/2012, 04:21
 
Fecha de Ingreso: julio-2008
Mensajes: 24
Antigüedad: 11 años, 7 meses
Puntos: 3
Respuesta: valor $mapAddress repetido

bueno, quisiera saber ¿qué intentas hacer con ese código?, y ¿de donde obtienes el valor de $mapAddress['state']?
es que así no puedo saber lo que intentas hacer con el código y siempre te dará castellon porque es el ultimo valor asignado a $mapAddress['state']
enfin un poco más de info no estaría mal
  #9 (permalink)  
Antiguo 30/04/2012, 04:40
Avatar de santris  
Fecha de Ingreso: agosto-2009
Ubicación: Sant Feliu de Llobregat
Mensajes: 955
Antigüedad: 10 años, 6 meses
Puntos: 66
Respuesta: valor $mapAddress repetido

Me refiero a los valores que ya tienes insertados en la base de datos, no los que recuperas para volver a insertar.

Mira: en la tabla donde tienes la provincias, en el campo provincia en lugar de tener como supuesto valor castellon deberías tener castell&oacute;n así, te ahorras tener que combertirlo cuando lo recuperas.
__________________
Tu álbum de cromos online!!
  #10 (permalink)  
Antiguo 30/04/2012, 04:41
lucasabogado
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: valor $mapAddress repetido

Me descarge en su dia un combo de por ahi y los datos previamente los inserto en msql


-- phpMyAdmin SQL Dump
-- version 3.2.0.1
-- http://www.phpmyadmin.net
--
-- Servidor: localhost
-- Tiempo de generaci&oacute;n: 25-04-2012 a las 07:57:31
-- Versi&oacute;n del servidor: 5.1.37
-- Versi&oacute;n de PHP: 5.3.0

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";


/*!40101 SET @[email protected]@CHARACTER_SET_CLIENT */;
/*!40101 SET @[email protected]@CHARACTER_SET_RESULTS */;
/*!40101 SET @[email protected]@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;

--
-- Base de datos: `pruebas`
--

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `provincia`
--





CREATE TABLE IF NOT EXISTS `puerto` (
`Name` VARCHAR(76) CHARACTER SET utf8 COLLATE utf8_unicode_ci,
`Pais` varchar(76) CHARACTER SET utf8 COLLATE utf8_unicode_ci,
`provincia` varchar(76) CHARACTER SET utf8 COLLATE utf8_unicode_ci,
PRIMARY KEY (`Name`,`Pais`,`provincia`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;

--
-- Volcar la base de datos para la tabla `poblacion`
--

INSERT INTO `puerto` (`Name`, `Pais`, `provincia`) VALUES



('Montmel&oacute;', 'ESPA&Ntilde;A', 'Barcelona'),
('Onda','ESPA&Ntilde;A','Castellon');


CREATE TABLE IF NOT EXISTS `provincia` (
`Name` varchar(76) CHARACTER SET utf8 COLLATE utf8_unicode_ci,
`Pais` varchar(76) CHARACTER SET utf8 COLLATE utf8_unicode_ci,
PRIMARY KEY (`Name`,`Pais`)
) TYPE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;

--
-- Volcar la base de datos para la tabla `provincia`
--

INSERT INTO `provincia` (`Name`, `Pais`) VALUES


('Castellon', 'Spain'),
('Barcelona', 'Spain');


CREATE TABLE IF NOT EXISTS `pais` (
`Name` varchar(76) CHARACTER SET utf8 COLLATE utf8_unicode_ci,
`Cambios` varchar(76) CHARACTER SET utf8 COLLATE utf8_unicode_ci,
PRIMARY KEY (`Cambios`),
UNIQUE KEY `Name` (`Name`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;

--
-- Volcar la base de datos para la tabla `pais`
--

INSERT INTO `pais` (`Name`, `Cambios`) VALUES
('Andorra', 'AND'),
('Espa&ntilde;a', 'Spain');

/*!40101 SET [email protected]_CHARACTER_SET_CLIENT */;
/*!40101 SET [email protected]_CHARACTER_SET_RESULTS */;
/*!40101 SET [email protected]_COLLATION_CONNECTION */;


despues cuando alguien quiere poner un anuncio tiene lo antes mencionado de arriba que introduce los datos pero desde el combo con tres secciones el problema que tengo realmente es que no puedo insertarlo en la base de datos con los acentos ni con las ñ como por ejemplo

('Castellon', 'Spain'),
('Barcelona', 'Spain');

nisiquiera me deja poner España por lo tanto para que no se vea al final en el cliente

Castellon en vez de Castellón
y Spain en vez de España

habia pensado en poner lo que hay arriba del todo en primera pregunta

<?php $cat_name = $mapAddress['State']; { ?>
<?php if ($cat_name == 'Castellon') ?>
<?php echo $mapAddress['state']; ?>
<?php $mapAddress['state'] = 'Castell&oacute;n'; ?>
<?php } ?>

pensaba que con esto me quedaria resuelto a ver si ahora me has entendido


muchas gracias por tu paciencia
  #11 (permalink)  
Antiguo 30/04/2012, 05:16
Avatar de santris  
Fecha de Ingreso: agosto-2009
Ubicación: Sant Feliu de Llobregat
Mensajes: 955
Antigüedad: 10 años, 6 meses
Puntos: 66
Respuesta: valor $mapAddress repetido

Aquí está el fallo:

Cita:
INSERT INTO `provincia` (`Name`, `Pais`) VALUES
('Castellon', 'Spain'),
('Barcelona', 'Spain');
Deberias haber insertado esto:

Cita:
INSERT INTO `provincia` (`Name`, `Pais`) VALUES
('Castell&oacute;n', 'Espa&ntilde;a'),
('Barcelona', 'Espa&ntilde;a');
y lo que pretendes hacer es esto, es solo un ejemplo:
Código PHP:
echo '<select name='provincia'>';
while(
$mapAddress=mysql_fetch_array($query)){
  if(
$mapAddress['State']=='Castellon'$provincia 'Castell&oacute;n';
  if(
$mapAddress['State']=='Almeria'$provincia 'Almer&iacute;a';
  echo 
"<option value='".$mapAddress['State']."'>$provincia</option>";
}
echo 
'</select>'
pero esto último es una locura, tienes que avaluar todas las provincias...
__________________
Tu álbum de cromos online!!
  #12 (permalink)  
Antiguo 30/04/2012, 05:30
lucasabogado
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: valor $mapAddress repetido

En cuanto le pongo

('Castell&oacute;n', 'Espa&ntilde;a'),
('Barcelona', 'Espa&ntilde;a');

me desaparece de la lista del combo

y bueno evaluar las provincias serian 12 tiene mas faena pero llevo tantos dias con esto que ya no me viene de otros dos

saludos
  #13 (permalink)  
Antiguo 30/04/2012, 09:42
 
Fecha de Ingreso: julio-2008
Mensajes: 24
Antigüedad: 11 años, 7 meses
Puntos: 3
Respuesta: valor $mapAddress repetido

bueno inserta los datos como te ha dicho Santris

INSERT INTO `provincia` (`Name`, `Pais`) VALUES
('Castell&oacute;n', 'Espa&ntilde;a'),
('Barcelona', 'Espa&ntilde;a');

pero al recuperarlos usa esto

Código PHP:
<?php echo "<option value='".utf8_decode($mapAddress['State'])."'>$provincia</option>";  ?>

Última edición por terrakio; 30/04/2012 a las 09:48
  #14 (permalink)  
Antiguo 30/04/2012, 10:45
lucasabogado
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: valor $mapAddress repetido

Como habia mencionado anteriormente cuando inserto en la BD


INSERT INTO `provincia` (`Name`, `Pais`) VALUES
('Castell&oacute;n', 'Espa&ntilde;a'),
('Barcelona', 'Espa&ntilde;a');


me desaparece el segundo combo el tercero no lo se porque al no abrir el segundo no se abre el tercero veras:

son tres el primero abre el País y el segundo provincia y el tercero población

he puesto la BD antes y si te fijas donde no tiene acentos=&aacute; ni donde no tiene ñ=&ntilde; cuando las inserto ya no funcionan los combos

muchas gracias
  #15 (permalink)  
Antiguo 30/04/2012, 12:00
 
Fecha de Ingreso: julio-2008
Mensajes: 24
Antigüedad: 11 años, 7 meses
Puntos: 3
Respuesta: valor $mapAddress repetido

bueno, supongo que estas utilizando un script descargado de internet, ¿me lo puedes pasar? o solo el nombre y yo me lo busco y a ver lo que sale.
  #16 (permalink)  
Antiguo 30/04/2012, 12:56
lucasabogado
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: valor $mapAddress repetido

Como te lo mando ? donde encuentro tu email ?
  #17 (permalink)  
Antiguo 01/05/2012, 05:43
lucasabogado
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: valor $mapAddress repetido

He buscado y encontrado otro script pero solo con dos combos y ya me va bien porque es en java y ahí si le puedo poner ñ y acentos

de todas formas muchas gracias por vuestro interés y por vuestro tiempo


un abrazo saludos

Etiquetas: repetido
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 03:07.