Ayuda super urgente php

Desde
22 Ago 2010
Mensajes
6.590
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
Hola bueno venog a molestarlos de nuevo necesito una ayuda la verdad ya tengo 3 dias batallando con esto y no puedo lidiar mas tiempo si alguien me contacta hablamos por skype es para hacer un redireccionamineto correcto en php


el code


que me hicieron ayer

PHP:
<?php
$hola= $_GET["job"];

include "conf.php";
include "functions.php" ;
require_once 'parse.php' ;

$reta = strtoupper(substr(str_replace('www.', '', $_SERVER['SERVER_NAME']), 0, 2));

$tuti = "".strtolower($reta)."bolsa";

$result = mysql_query("SELECT link FROM ".$tuti." where serial = '".$hola."' limit 1");


$row = mysql_fetch_array($result);

header('Location: '.$row["link"].'');

?>


El code de arriba sirve para redirecionar

Nuevo code

que ayuda a elimanr el subdominio (us.misitio.com y lo poner asi misitio.com) lo malo de este code que el pais US ahora ya no me redirige correctamente

PHP:
define('_siteurl','http://'.strtolower((_subdomain_ == 'US' ? '' : _subdomain_.'.')).'misitio.com');

viejo codeo

Este code era el anterior si servia pero deja el pais con el subdominio us.misitio.com

PHP:
define('_siteurl','http://'.strtolower(_subdomain_).'.misitio.com');


Lo que pasa ahora que se implemento el nuevo code ahora dejo de funcionar un redirecionamiento
 
Última edición:

shadowhck

Lambda
Programador
Verificado por Whatsapp
Desde
18 Ago 2009
Mensajes
2.772
El segundo fragmento no funciona así.

Prueba.
PHP:
define('_siteurl','http://'.strtolower((    (_subdomain_ == 'US') ? '' : _subdomain_.'.'    ).'misitio.com');
 

blogers

Pi
SEO
Desde
22 Ago 2010
Mensajes
6.590
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
Se quedo la pagina en blanco:s
El segundo fragmento no funciona así.

Prueba.
PHP:
define('_siteurl','http://'.strtolower((    (_subdomain_ == 'US') ? '' : _subdomain_.'.'    ).'misitio.com');
 

shadowhck

Lambda
Programador
Verificado por Whatsapp
Desde
18 Ago 2009
Mensajes
2.772
Se quedo la pagina en blanco:s

Se supone que el codigo debe hacer lo siguiente:
PHP:
define('_siteurl','http://'.strtolower((    (_subdomain_ == 'US') ? '' : _subdomain_.'.'    ).'misitio.com');
Si _subdomain_ es igual a 'US', se regresa una cadena vacia, de lo contrario se regresa el valor actul de _subdomain_ más un punto.

US:
_siteurl = 'http://misitio.com'

No US:
_siteurl = 'http://otro.misitio.com'

---------- Post agregado el 12-oct-2013 hora: 14:29 ----------

Prueba este:
PHP:
define('_siteurl','http://'.strtolower(    (_subdomain_ == 'US') ? '' : _subdomain_.'.'    ).'misitio.com');

Tenia error de sintaxis.
 

blogers

Pi
SEO
Desde
22 Ago 2010
Mensajes
6.590
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
Se supone que el codigo debe hacer lo siguiente:
PHP:
define('_siteurl','http://'.strtolower((    (_subdomain_ == 'US') ? '' : _subdomain_.'.'    ).'misitio.com');
Si _subdomain_ es igual a 'US', se regresa una cadena vacia, de lo contrario se regresa el valor actul de _subdomain_ más un punto.

US:
_siteurl = 'http://misitio.com'

No US:
_siteurl = 'http://otro.misitio.com'

---------- Post agregado el 12-oct-2013 hora: 14:29 ----------

Prueba este:
PHP:
define('_siteurl','http://'.strtolower(    (_subdomain_ == 'US') ? '' : _subdomain_.'.'    ).'misitio.com');

Tenia error de sintaxis.

No sigue iguanas jejeje
 

Isidro

Gamma
Programador
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
18 Jun 2012
Mensajes
157
En el primer código lo que se intenta extraer es el subdominio en el que se está, para que así pueda conectarse a una tabla que empieza por el subdominio: xxbolsa. El segundo lo que devuelve es la dirección del sitio con el subdominio, en caso de que no sea US; ya que si es así, sólo devuelve la dirección del sitio y no el subdominio. Es decir, que si es US en lugar de devolver "us.misitio.com" devuelve "misitio.com", pero si es otro subdominio devolverá "xx.misitio.com".

Partiendo de eso, si estamos en el subdominio US y queremos conectar a la tabla "usbolsa", se deberá definir lo contrario al segundo código. Es decir, que si no es US o no es un subdominio, la tabla sea "usbolsa". Más que nada porque sino la tabla será "mibolsa", ya que $reta obtiene los dos primeros caracteres de la variable $_SERVER['SERVER_NAME']. Supongo que dicha tabla no existe, así que es normal que no funcione.

El segundo código no hace falta que lo cambies, ya que independientemente de la ausencia o posición de los paréntesis, debería funcionar correctamente. Pero en el primero -que por cierto no es muy seguro- deberás incluir una condición para que, en caso de que no se especifique un subdominio, se utilice "us". Sería como lo contrario al segundo código, como mencionaba antes. Hay varias formas de hacerlo, pero con una bastará.

Cambia:
PHP:
$reta = strtoupper(substr(str_replace('www.', '', $_SERVER['SERVER_NAME']), 0, 2));

Por:
PHP:
$subdomain = strtolower(substr(str_replace('www.', '', $_SERVER['SERVER_NAME']), 0, 2));
$reta = $subdomain === 'mi' ? 'us' : $subdomain;

Donde dice 'mi' irían los dos primeros caracteres del dominio. No obstante, me preguntaba si dentro del primer código puedes utilizar la constante '_subdomain_'. De esta forma se ahorraría lo anterior, y se podría cambiar por:
PHP:
$reta = _subdomain_;

Saludos!
 
Última edición:
Arriba