Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

178
Views
Modificando el parámetro GET en PHP

Soy muy novato en esto, así que déjame explicarte el problema:

Tengo un script de devolución de dinero, el título del minorista está almacenado en la base de datos, mis enlaces se ven así:

ejemplo.com/view_retailer.php?id=232

Quiero cambiar eso a /view_retailer?title=retailer-title

No puedo entender por qué no funciona, tengo en mi base de datos las columnas retail_id, title y retail_url. Retailer_url está vacío.

 if (!function_exists('GetRetailerLink')) { function GetRetailerLink($retailer_id, $retailer_title = "") { $retailer_id = (int)$retailer_id; $retailer_link = SITE_URL."view_retailer.php?id=".$retailer_id; return $retailer_link;

En la página php view_retailer:

 if (isset($_GET['id']) && is_numeric($_GET['id'])) { $retailer_id = (int)$_GET['id']; } else { header ("Location: index.php"); exit(); }

Ya jugué con el código a continuación, pero esto no funciona -> no se encontró la tienda.

 if (!function_exists('GetRetailerLink')) { function GetRetailerLink($retailer_id, $retailer_title = "") { $retailer_id = (int)$retailer_id; $retailer_link = SITE_URL."view_retailer.php?title=".$retailer_title; return $retailer_link;

y

 if (isset($_GET['title']) && is_numeric($_GET['title'])) { $retailer_title = (int)$_GET['title']; } else { header ("Location: index.php"); exit(); }

¿Como puedó resolver esté problema? ¡Gracias por ayudarme!


Gracias por las soluciones propuestas.

Lo probé ahora con

 if (!function_exists('GetRetailerLink')) { function GetRetailerLink($retailer_id, $retailer_title = "") { $retailer_id = (int)$retailer_id; $retailer_link = SITE_URL."view_retailer.php?title=".$retailer_title; return $retailer_link;

y

 if (isset($_GET['title']) && is_string($_GET['title'])) { $retailer_title = (string)$_GET['title']; } else { header ("Location: index.php"); exit(); }

también lo probé con

 if (isset($_GET['title'])) { $retailer_title = (int)$_GET['title']; } else { header ("Location: index.php"); exit(); }

Desafortunadamente, eso tampoco soluciona el problema -> Tienda no encontrada.

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Deberá eliminar is_numeric($_GET['title']) en su código.

is_numeric($_GET['title']) verificará si la variable es un número o una cadena numérica.

over 4 years ago · Santiago Trujillo Report

0

¿Quizás puedas intentar eliminar is_numeric? Dado que el título es una cadena de caracteres, siempre devolverá falso.

 if (isset($_GET['title'])) { $retailer_title = $_GET['title']; } else { header ("Location: index.php"); exit(); }

Espero que esto funcione para usted :)

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!