2012-07-02 1 views
2

Ok, alors voici une question.Comment obtenir l'objet JSON

J'ai deux projets dans l'allumeur de code, disons a et b. J'ai un formulaire dans 'a'. Quand un utilisateur remplit un formulaire et le soumet, toutes les données du formulaire sont placées dans un tableau puis codées en json. voici le code pour elle

function create(){ 
$data = array(); //get all the data from the form into an array 
$data[] = array('name' => $this->input->post('name'), 
    'abbrev' => $this->input->post('abbrev'), 
    'long_name' => $this->input->post('long_name'), 
    'long_abbrev' => $this->input->post('long_abbrev'), 
    'url' => $this->input->post('url'), 
    'description' => $this->input->post('description')); 
    $json_data=json_encode($data); 
    $this->output->set_output($json_data) 
    } 

Maintenant, je veux envoyer ces données au projet « b » où il va stocker dans la base de données. voici le code pour cela. $ college_details = array(); $ College_details ['colleges'] = json_decode (file_get_contents ('http: // localhost: 8888/a/colleges');

Mais je ne sais pas comment projet « b » saura qu'il ya des données à prendre

+3

Veuillez coder les échantillons des parties pertinentes de 'localhost/a/college/index.php'. Nous ne pouvons pas lire les fichiers sur votre disque dur;) Indiquez également comment vous souhaitez récupérer les données, et ce que vous avez essayé jusqu'à présent. –

+0

Eh bien, la pratique courante serait d'inclure/exiger un fichier dans un autre, de sorte que vous pouvez utiliser le contenu des deux. Ou vous pouvez également mettre les données dans un $ _SESSION et rediriger vers l'autre fichier. Vraiment, nous avons besoin de plus d'informations sur la relation entre les deux fichiers pour vous donner une réponse plus utile. –

+0

Si vous voulez juste envoyer des données du formulaire sur le site 'a' pour former sur le site' b', sans aucun traitement, alors tout ce dont vous avez besoin est de

' et d'obtenir les données comme vous le feriez normalement. Si ce n'est pas le cas, vous devriez utiliser cURL. –

Répondre

2

Je crois que ce que vous voulez dire que vous voulez stocker les données à travers une session afin que vous puissiez y accéder sur la page suivante. Si c'est le cas, utilisez la fonctionnalité de session PHP (ajoutez session_start() en haut de chaque fichier) pour stocker la variable sur les pages ($_SESSION['data'] = $data; à la page un et echo $_SESSION['data']; à la page deux).

+0

question éditée – user1212207

-1

que je comprends que vous avez ce senario projet a) à: // project_a/ projet b) à: // project_b/

au projet a: // project_a/some_action vous soumettez votre formulaire et générer une chaîne json comme $ json_data. Et vous voulez projeter b pour sauvegarder ces données.

SOLUTION jason_data de $ est un appel chaîne: // project_b/json_save_action acheter CURL au submition de la forme et passer le json_data de $ comme variable: // project_b/json_save_action. faites le moi savoir si cela aide. :)

+1

Vous voulez dire à ce $ json_data = json_encode ($ data); $ This-> curl-> simple_post ('http: // localhost: 8888/b/collèges', $ json_data); – user1212207

+0

oui exactement ....... file_get_contents fonctionnera aussi si vous passez en url après urlencode –

+0

merci cela a fonctionné – user1212207