Réglage baseurl dans cakephp
Je suis en train de travailler sur une application qui est en cours d'exécution dans CakePHP et je suis en utilisant AJAX requêtes de l'intérieur.
Dans tous les cas et pour tous les ajax post j'ai utilisé l'url comme
var ht = $.ajax({
type: "GET",
url: "http://172.20.52.99/FormBuilder/index.php/forms/viewChoices/"+attribute_id,
async: false
}).responseText;
var myObject = eval('(' + ht + ')');
Est-il de toute façon dans CakePHP où je peux donner mon URL de base comme http://172.20.52.99/FormBuilder/index.php/
et d'appeler l'URL de base dans tous les endroits que je veux.
OriginalL'auteur useranon | 2010-06-02
Vous devez vous connecter pour publier un commentaire.
Essayez d'écrire de code suivant
$_SERVER['HTTP_HOST']
----il vous donnera de travail de l'hôteet
$this->base
---vous donnera en travaillant urlOriginalL'auteur jack
Vous pouvez utiliser $this->base pour obtenir l'url de base.
OriginalL'auteur Sudarshan Singh
vous pouvez utiliser
.
Reportez-vous http://book.cakephp.org/2.0/en/core-libraries/global-constants-and-functions.html pour plus de détails.
OriginalL'auteur Raja Rama Mohan Thavalam
Vous pouvez définir l'URL par défaut pour toutes vos demandes d'ajax de cette façon:
OriginalL'auteur Pavel
D'utiliser n'importe quelle méthode de la suite
<?php echo $this->Html->url('/');?>
<?php Router::url('/', true); ?>
<?php echo $this->base;?>
<?php echo $this->webroot; ?>
Définir une constante dans Config/core.php comme
define("BASE_URL", "www.yoursite.com/");
et l'utilisationBASE_URL
n'importe où dans votre projetOriginalL'auteur Subodh Ghulaxe
Je suppose que j'ai le même scénario: pour le développement, le site est disponible à localhost/gâteau, de sorte que dans la production du site est déployé dans le répertoire racine de example.com. Dans l'en-tête j'ai mis:
<base href="<?php echo $base_url ?>" />
,dans
AppContoller::beforeRender()
j'ai mis:$this->set('base_url', 'http://'.$_SERVER['SERVER_NAME'].Router::url('/'));
.Cela fonctionne très bien pour tout, sauf JS (donc AJAX), comme il ignore base_url.
Donc j'ai une solution de contournement (utilise jQuery, mais facile à remplacer sans):
Il est défini par $this->set('base_url', ...). Où avez-vous que dans votre code?
OriginalL'auteur sibidiba
Cela peut également être utile:
http://book.cakephp.org/view/1448/url
OriginalL'auteur Henri