2009-04-25 6 views
3

je la simulation suivante en C pour les voitures dans un rond- alt text http://dl.getdropbox.com/u/175564/cars.pngImpossible de mettre une simulation en C à une page Web

Par exemple,

7 <space> <enter> 

donne plus de voitures à la simulation, alors que

s1 <enter> 

met un signe supérieur à la route entrante # 1.

Je veux mettre la simulation à une page Internet telle que les utilisateurs peuvent essayer. Cependant, je ne sais pas où je devrais commencer.

Je sais Joomla et peu Django. Peut-être, ils peuvent être utiles.

Comment pouvez-vous mettre un programme C à une page Web de sorte que les utilisateurs peuvent l'utiliser?

Répondre

4

CGI est ce que vous voulez; il vous permettra d'intégrer n'importe quel programme que vous voulez dans un site Web, il a été fait à cet effet. Alors peut-être l'intégration de quelques options supplémentaires avec PHP et HTML permettra à l'utilisateur d'entrer des données dans le programme via le web. Ça ne devrait pas être trop dur.

Jetez un oeil ici pour plus d'informations: http://www.cs.tut.fi/~jkorpela/perl/cgi.html

Je pense que c'est un bon pointeur dans la bonne direction. J'espère que ça aide.

+0

Merci pour votre réponse! –

1

Je commencerais avec un wrapper applet flash ou java. Vous pouvez communiquer avec votre application via une connexion tcp et afficher les résultats dans le flash ou l'applet.

2

est ici une bonne introduction à l'écriture en C CGIs: http://www.cs.tut.fi/~jkorpela/forms/cgic.html

Cependant, puisque vous êtes un débutant, je vous recommande le portage de votre programme à PHP. C'est un langage très facile à saisir, et c'est beaucoup plus facile que d'écrire un CGI en C.

2

Je suppose que le programme C a besoin d'une entrée pendant qu'il s'exécute et non via des arguments de ligne de commande? Si je me trompe, vous pouvez simplement utiliser PHP et shell_exec() pour lancer le programme. La fonction renvoie tout ce qui est imprimé sur stdout.

Cette page peut ressembler à:


    $sim = shell_exec("/path/to/binary -a 5 -b 6"); 
    echo $sim; 

Lorsque la chaîne passée à shell_exec est exactement ce que vous tapez sur la ligne de commande.

4

Vous pouvez exécuter le code C dans une application flash en utilisant l'alchimie:

http://labs.adobe.com/technologies/alchemy/

+0

Cela devrait être la réponse. Belle trouvaille. –

+0

Je suis d'accord que c'est une bonne trouvaille (je ne savais pas à ce sujet moi-même) mais avec ma façon les utilisateurs n'ont pas besoin de flash. De cette façon, vous pouvez utiliser le logiciel libre tout le chemin. En fonction de votre type de personnalité (et du système d'exploitation probable), cela peut ou non être important pour vous. Mais c'est important pour moi. –

1

Je vous conseille d'aller avec des prises. Si votre programme C peut installer et écouter sur une socket locale ou Internet, vous pouvez utiliser les fonctionnalités de socket dans n'importe quelle langue pour lui envoyer des arguments et obtenir des résultats.

Si cela vous cause trop de problèmes, faites en sorte que PHP exécute le programme tout en dirigeant la sortie vers un fichier. Ensuite, avoir php lire ce fichier.En regardant la sortie de votre programme, je pense qu'essayer d'imprimer les résultats de shell_exec() entraînera une sortie clobée. Donc, vous pouvez shell_exec ("/ bin/programme -arguments> /tmp/prog-tmp.txt"), puis lire prog-tmp.txt.

+0

Merci pour votre réponse! Je vais essayer votre conseil aussi. –

2

Si vous voulez une simulation dynamique, où les voitures bougent pendant que vous regardez, vous aurez besoin d'une applet ou d'un flash.

Un programme cgi affiche la page sur chaque http GET/POST (sur reload, soumettre etc) et qui est probablement pas ce que vous voulez.

Questions connexes