How can I hide content id on URL |
Hi Everyone.
Firstly Sorry for my bad engelish. Firstly my url : explame.com/olmos/id/content-title/ So I want to hide /id/ from the URL. So my routes.php like : "olmos/([0-9]+)/(.*)"] = "pages/olmos"; Thanks for your help.
Uhmm, how do you detect wich article id is the user requesting.
Maybe you can use the "slug" as the identifier like do Wordpress.
PHP Developer. Codeigniter Fan. Family Lover.
(10-20-2016, 06:42 AM)olmos Wrote: Hi Everyone. You can use a form in place of a link and pass the id in as a post.
You can try below steps to hide id in your urls.
$id = 123; $encode = base64_encode($id); $decode = base64_decode($encode);
Or a hidden input form field
What did you Try? What did you Get? What did you Expect?
Joined CodeIgniter Community 2009. ( Skype: insitfx )
12-04-2016, 03:06 AM
(This post was last modified: 12-04-2016, 09:55 AM by ciadmin. Edit Reason: Aded bbcode for readability )
maybe it will be more better if I can show the codes
![]() pages_model.php PHP Code: public function getMakale($id) -------------------------------------------------- controller - pages.php PHP Code: public function makale() ------------------------------------------------- and the routes code PHP Code: $route["makale/([0-9]+)/(.*)"] = "pages/makale";
Show the fields in your database table, you would use a slug for accessing it.
What did you Try? What did you Get? What did you Expect?
Joined CodeIgniter Community 2009. ( Skype: insitfx )
(12-04-2016, 11:43 AM)InsiteFX Wrote: Show the fields in your database table, you would use a slug for accessing it. I have field in database : url http://prnt.sc/dfaztz so first item is "id" So I wanna hide id and just I wanna use the "URL" in database. Thanks for your help
Hi,
This is quite straight forward to do. 1. In a table for products you would have product_id, product_url, plus all your other columns like name, price, description etc. 2. The product_url is a unique column and can be auto generated based on, say, the required product_name, or your user or admin can add a custom one from your 'add product screen'. 3. When you generate a url like your example, you do not send the 'id', you send the 'product_url' and look up your product from that. PHP Code: public function view_product($product_url) To generate the url you would do Code: <a href="<?php echo site_url('products/view_product/'.$item['product_url']); ?>">ProductName</a> The url will then be something like: Code: www.mydomain.com/products/view_product/my_wonderful_product So now, the product ID's are only for internal use, any reference to them in url's or your HTML is by url name, not their id. (By internal use, I mean once you have the product, you would still gather other related tables via the id, such as related products, special offers, related articles, reviews etc). Hope that helps. Paul. |
Welcome Guest, Not a member yet? Register Sign In |