/ / कोडिंग राइटर में यूआरआई को रूट करना - कोडिग्निटर, रूट्स, यूरी

कोडिंग राइटर में यूआरआई युक्त राउटिंग - कोडाइनाइटर, रूट्स, यूआरआई

यह एक ईमेल सक्रियण लिंक है जो उपयोगकर्ता नियंत्रक में लिखा गया है

http://www.some.com/user/activate_user/user@gmail.com/90101001010

मैं इसके लिए मार्ग लिखना चाहता हूं।

मैंने नीचे की कोशिश की लेकिन इसकी

// USER POST
$route["user"] = "user";
$route["user/activate_user/:any/:num"] = "user/activate_user/$1/$2";

त्रुटि

An Error Was Encountered

The URI you submitted has disallowed characters.

अगर मैं इस तरह से uri चलाता हूँ तो यह ठीक है

http://www.some.com/user/activate_user/activate_user/1111/90101001010

यह ईमेल आईडी स्वीकार क्यों नहीं कर रहा है

उत्तर:

जवाब के लिए 2 № 1

होना चाहिए:

$route["user/([w+-]+)(.[w+-]+)*@([a-zA-Zd-]+.)+[a-zA-Z]{2,6}/(:any)"]

संपूर्ण स्ट्रिंग बिना सीमांकक या संशोधक के एक रेग्ज है। आप सीमांकक, संशोधक डाल रहे थे और उपयोग भी कर रहे थे ^ तथा $.


उत्तर № 2 के लिए 1

कृपया अपनी कॉन्फ़िग फ़ाइल देखें, कि आपको url में कौन से uri chars की अनुमति है। डिफ़ॉल्ट रूप से यह पसंद है:

$config["permitted_uri_chars"] = "a-z 0-9~%.:_-";

यदि आप चाहते हैं तो कृपया लिंक पर जाएँ यूरेलिस्लाब द्वारा यूआरएल गाइडलाइन


उत्तर № 3 के लिए 1

यह काम किया

$config["permitted_uri_chars"] = "a-z 0-9~%.:_@-";
$route["user/activate_user/(:any)/(:any)"] = "user/activate_user/$1/$2"; –

जवाब के लिए 0 № 4

Config.php पर जाएं

खोज $config["permitted_uri_chars"] = "a-z 0-9~%.:_-";

और जोड़ $config["permitted_uri_chars"] = "a-z 0-9~%.:_()@&-!";

और स्टॉप और रिफ्रेश सर्वर

इसे बदलें

$route["user"] = "user";
$route["user/activate_user/:any/:num"] = "user/activate_user/$1/$2";

इस के साथ

$route["user"] = "user";
$route["user/activate_user/(:any)/(:any)"] = "user/activate_user/$1/$2";

जोड़ा गया

ट्यूटोरियल ईमेल सक्रियण


जवाब के लिए 0 № 5

यह मेरे लिए काम किया

config.php

 $config["permitted_uri_chars"] = "a-z 0-9~%.:_@-";

router.php

 $route["user/activate_user/(:any)/(:any)"] = "user/activate_user/$1/$2";