0
votes

Comment exécuter PHP Script activement sur la machine côté client / client?

J'essaie d'exécuter un script PHP directement sur le côté client plutôt que de prendre la demande d'un client au serveur et de recevoir une sortie traitée ou un fichier traité. J'ai créé un script PHP qui fonctionne correctement du côté du serveur. Je veux diriger ce même script PHP sur le côté du client aussi. Le PHP n'est pas installé du côté du client, il est uniquement du côté serveur. Utilisation de code> Méthode I en quelque sorte réussite à exécuter un script php du côté du client. Mais il s'agit simplement de fenêtre ou de petit cadre visible sur le navigateur actuel ou dans une page sur le navigateur d'une machine locale (ou de la machine client). Donc, chaque fois que lorsque les fonctions PHP sont appelées, elle est exécutée au côté du serveur, pas du côté du client.

existe un moyen d'exécuter des fonctions PHP réellement sur le côté client également? P>

ou p>

est là un moyen d'ouvrir cette page PHP de travail entière sur le côté client plutôt que sur une petite fenêtre ou dans un cadre de page de serveur sur un navigateur client sans installation PHP? P>

Qu'est-ce que j'ai essayé est: p>

J'ai créé un script php comme "serveur.php" strong> qui affiche le nom de tous les fichiers d'un répertoire de travail en cours de la machine serveur forte> . P>

<object type="text/html" data="http://192.168.0.110:81/file2v2.php" width="800px" height="600px" style="overflow:auto;border:5px ridge blue">
</object>


0 commentaires

4 Réponses :


1
votes

Tous les clients où vous souhaitez exécuter des scripts PHP doivent être installés PHP, ainsi qu'un serveur Web en cours d'exécution (si ces scripts sont accessibles via http). Il n'y a aucun moyen autour de cela.

Un moyen de le faire sans le code côté client consiste à donner à votre serveur SSH d'accéder à tous les clients. (Cela signifie créer l'utilisateur sur chaque machine et lui donner les autorisations nécessaires). Ensuite, le serveur pourrait lire l'adresse IP du visiteur, le connecter via SSH et lire le système de fichiers du client et l'afficher dans le navigateur. Ce serait une approche sauvage, mais possible.

Consultez cette sortie: HTTPS: // kvz.io/blog/2007/07/24/make-ssh-connections-with-php/

Cela signifierait également que si quelqu'un a accès à ce serveur ou peut en quelque sorte l'exploiter, tous les clients sont également compromis.


0 commentaires

0
votes

Je pense que vous devriez jeter un oeil à la différence entre le côté client et le côté serveur. Jetez un look ici , il explique beaucoup.

Devis de la liaison ci-dessus:

Différences de clé entre les scripts côté serveur et les scripts côté client

  1. Le script de côté serveur est utilisé dans le backend, où le code source n'est pas visible ou masqué au client (navigateur). D'autre part, les scripts côté client sont utilisés à l'extrémité avant que les utilisateurs peuvent voir du navigateur.

  2. Lorsqu'un script côté serveur est traité, il communique au serveur. Comme contre, les scripts côté client n'ont pas besoin d'une interaction de serveur.

  3. Le langage de script côté client implique des langues telles que HTML, CSS et JavaScript. En revanche, des langages de programmation tels que PHP, Asp.Net, Ruby, Coldfusion, Python, C #, Java, C ++, etc.

  4. Script-côté serveur est utile pour personnaliser les pages Web et mettre en œuvre les modifications dynamiques des sites Web. Inversement, le script côté client peut minimiser efficacement la charge sur le serveur.

  5. Script de côté serveur est plus sécurisé que le script côté client, car les scripts latéraux du serveur sont généralement masqués à partir de l'extrémité du client, tandis qu'un script côté client est visible pour les utilisateurs.


    Si vous voulez que chaque logique soit faite sur le côté client, jetez un coup d'œil à l'angulaire, à Vuejs ou juste JavaScript de base. Mais avec JavaScript (y compris Angular / Vuejs /, etc.), vous ne pouvez pas manipuler des fichiers côté client, ce qui constituerait une question de sécurité majeure si elle était capable de. Pour changer les choses sur le côté serveur, vous aurez toujours besoin d'un langage de programmation back-end comme PHP, C #, Java, etc.
    Sachez que tout ce que vous faites du côté client est visible pour le client et peut être modifié par le client. Qui rend votre application vulnérable aux attaquants.

    Pour répondre à votre question: vous ne pouvez pas.


11 commentaires

Je suis totalement avec vous sur la partie JS, mais le côté client JS n'inclut pas la possibilité de lire / manipuler des fichiers locaux. Pour une très bonne raison, si vous y pensez.


@Williamrandokun Vous avez complètement raison, et je suis content que ce ne soit pas!


@William Randokun - c'est exactement le problème.


@Michel - C'est pourquoi j'utilise PHP, mais je ne peux pas installer PHP sur chaque ordinateur client, je crée donc une référence de PHP qui est utilisée par tous les clients. Mais pas autant que flexible que son côté serveur.


@David - Pouvez-vous élaborer ce que vous essayez d'accomplir? Pourquoi voulez-vous exécuter ce script php sur les clients? Que fait le script?


@Michel - En fait, je veux automatiser les choses. Actuellement, je prends des fichiers du côté du client au côté serveur en utilisant le bouton "Choisir le fichier" au côté client. Chaque fois que chaque fois que l'utilisateur doit cliquer sur le bouton "Choisir un fichier", sélectionnez le fichier en naviguant et puis à cliquer sur le bouton "Télécharger" pour envoyer un fichier de client à PHP Server. Je veux le rendre automatiquement effectué plutôt que de cliquer sur chaque fichier à télécharger.


@David - Eh bien, je ne pense pas que les navigateurs ne le laisseront jamais arriver. Lorsqu'un site Web est libre de choisir quel fichier est téléchargé, sans consentement de l'utilisateur, cela ne serait-il pas une infraction à la vie privée? Imaginez si Stackoverflow ne voudrait que copier votre répertoire de documents et la vendre. S'il s'agit de clients dans un réseau privé et que vous avez le contrôle total sur les clients, vous pouvez facilement faire des scripts PHP pour que les clients puissent appuyer sur le contenu du fichier sur votre serveur. Mais sans contrôle total sur le client, cela ne va pas fonctionner.


@Michel - Oui, c'est un réseau absolument privé. Seuls les clients dans le même réseau du serveur auront accès au fichier PHP ouvert à l'aide de HTML. Mais comment il peut facilement exécuter du côté du client sans même installer PHP sur leurs machines.


@David - Eh bien, vous pouvez effectuer quelque chose comme William Randokun a écrit dans sa réponse. Mais vous devez alors activer et configurer SSH sur chaque client. Vous pouvez faire la même chose avec FTP, mais à nouveau, vous auriez besoin d'activer et de configurer FTP sur chaque client. Je ne vois pas comment cela serait possible sans configurer php sur les clients et à exécuter un petit serveur Web sur les clients ou à installer SSH ou FTP.


@David - Je viens de réaliser, vous pouvez peut-être partager les dossiers Windows sur les clients et laisser le serveur pouvoir y accéder. Ensuite, vous pouvez créer votre script PHP pour accéder au dossier partagé et accéder au fichier.


@MICHEL - Merci Michel, vous approchez-vous semble bon mais la chose est tout ce problème se produit dans une application Web. Donc, je suis bloqué, sinon c'est la meilleure façon de partager le fichier dans une architecture de serveur client dans un réseau intranet.



0
votes

Pour exécuter un script, vous avez besoin d'un interprète installé, le navigateur peut lire le script JS, mais ne peut pas lire le script PHP, par exemple.

https://fr.wikipedia.org/wiki/php


0 commentaires

0
votes

Fondamentalement, non.

Mais vous pouvez lire à propos de C # Blazor approche ( HTTPS: // DotNet. Microsoft.com/apps/aspnet/web-apps/blazor ) et essayer de mettre en œuvre quelque chose comme celui-ci.


0 commentaires