Je rencontre des problèmes pour obtenir un formulaire php à écrire dans un fichier hébergé avec le dossier apache httpsdocs. Le formulaire fonctionne très bien si toutes les parties utilisent le protocole http, mais lorsque je sécurise le formulaire, la soumission de formulaire et le fichier dans lequel les résultats sont écrits, il échoue.PHP Formulaire d'écriture dans le fichier dans https: //
Quelqu'un peut-il aider?
Ce code php:
$myFile = "files/data.txt";
$fh = fopen($myFile, 'a') or die ("Could not read file");
$stringData = "Data in pipe format\n";
fwrite($fh, $stringData);
fclose($fh);
header('Location: http://www.example.com/thankyou');
Et les différents endroits sont:
- /var/www/vhosts/example.com/httpdocs/files
- /var/www /vhosts/example.com/httpsdocs/files
En outre, ma page de formulaire est https://example.com/form.php et le champ de formulaire redi rects to action = "processform.php", alors pourquoi cherche-t-il processform.php dans httpdocs plutôt que dans httpsdocs? Sûrement, il devrait rester dans le même protocole/répertoire que celui à partir duquel il a été appelé!
Merci pour toute aide :)
Désolé, mauvais terme - ce sont les emplacements des fichiers, qui, évidemment, correspondent aux URL demandées dans le code. httpsdocs/files est assigné à l'utilisateur: psaserv, donc apache peut en effet écrire dans le dossier, et tout le contenu. – MrFidge
Aussi, mon problème principal est que même si https://example.com/form.php a l'action de "processform.php, le fichier qui est appel est httpdocs/processform.php PAS httpsdocs/processform.php – MrFidge
ce dernier chose est seulement possible si le serveur https utilise aussi le docroot non sécurisé, ou si vous n'avez pas processform.php comme action mais par exemple http: //votresite../processform.php. – Maarten