Заранее извиняюсь, если то, о чем я прошу, очевидно, или ответ уже был где-то еще. Я пытался следовать различным руководствам и теперь боролся в течение нескольких часов, но мне не удалось никуда добраться. Возможно ты можешь помочь мне?
Я хотел бы загрузить файл на веб-страницу с помощью формы PHP (используя POST), затем выполнить перенаправление веб-страниц и загрузить следующую веб-страницу / HTML-файл. Насколько я понимаю, предполагается, что cURL будет использоваться для подобных работ (как вы можете видеть, я совершенно новичок в этом).
Вот тестовый файл, который я хотел бы загрузить:
hiddenlink
Это веб-страница с формой PHP, на которую я хотел бы загрузить тестовый файл:
hiddenlink
Вы можете вручную загрузить тестовый файл в браузер. Затем веб-страница перенаправит вас на новую веб-страницу с большой таблицей. Этот веб-сайт / HTML-файл может быть сохранен вручную.
Я хотел бы повторить этот подход в терминале, не используя браузер.
Это код, который я использовал до сих пор:
curl -vL --form fileToUpload=@Test_Upload.txt --form press=submit *hiddenlink* -o savedpage.html
Идея состоит в том, чтобы загрузить тестовый файл, затем выполнить перенаправление и сохранить новую веб-страницу как savepage.html. Это не работает. Можете ли вы дать мне какие-либо указания по этому поводу? Опять же, мои самые глубокие извинения, но я впервые использую cURL.
Основная проблема, которую я вижу, заключается в том, что вы отправляете на неправильную страницу для загрузки.
Сама форма, расположенная по адресу /upload/
то, что вы публикуете, но если вы посмотрите на HTML формы, действие upload.php
, Это где вы должны направить свой запрос. Примечание: curl не читает HTML, поэтому он не может понять, что, отправляя сообщение по первому URL, вы хотите, чтобы оно затем отправлялось в форму, определенную в HTML; Вы должны понять это и сделать это самостоятельно.
curl -v -F fileToUpload=@foo.txt \
-F submit='Upload File' \
-o savedpage.html \
http://www.example.com/upload/upload.php
-L
не нужно, потому что не похоже, что сайт отправляет какие-либо Location
заголовки; Тем не менее, это не больно иметь.
Других решений пока нет …