χρησιμοποιώντας συστροφή για τη μεταφόρτωση δεδομένων post με αρχεία
<p>θα ήθελα να χρησιμοποιήσω το curl όχι μόνο για την αποστολή παραμέτρων δεδομένων σε http post αλλά και για την αποστολή αρχείων με συγκεκριμένο όνομα φόρμας. πώς πρέπει να το κάνω;</p><p>http post parameters:</p><p>userid = 12345 filecomment = αυτό είναι ένα αρχείο εικόνας</p><p>http ανάρτηση αρχείου: τοποθεσία αρχείου = /home/user1/desktop/test.jpg όνομα φόρμας για αρχείο = εικόνα (αντιστοιχεί στο $ \_files ['image'] στην πλευρά php)</p><p>έκανα μέρος της εντολής curl ως εξής:</p><pre><code>curl -d "userid=1&amp;filecomment=this is an image file" --data-binary @"/home/user1/desktop/test.jpg" localhost/uploader.php </code></pre><p>το πρόβλημα που αντιμετωπίζω είναι το εξής:</p><pre><code>notice: undefined index: image in /var/www/uploader.php </code></pre><p>το πρόβλημα είναι ότι χρησιμοποιώ $ \_files ['image'] για να παραλάβω αρχεία στο σενάριο php.</p><p>πώς μπορώ να προσαρμόσω τις εντολές μου curl ανάλογα;</p>
<p>πρέπει να χρησιμοποιήσετε την επιλογή <code>-f</code>:<br> <code>-f/--form &lt;name=content&gt; specify http multipart post data (h)</code></p><p>δοκιμάστε αυτό:</p><pre><code>curl \ -f "userid=1" \ -f "filecomment=this is an image file" \ -f "image=@/home/user1/desktop/test.jpg" \ localhost/uploader.php </code></pre>
Σε περίπτωση που κάποιος πρέπει να κάνει το ίδιο πράγμα, έχω [ανακαλύψει ότι είναι δυνατόν με τη χρήση Servlets](https://stackoverflow.com/questions/359147/mask-urls-in-jsp) να φιλτράρετε τις διευθύνσεις URL, response.sendRedirect () και request.getRequestDispatcher (). Προς τα εμπρός (). Δοκιμάστε την διαχείριση Fusion Url Rewriter και Αντίστροφη μεσολάβησης:


<http://urlrewriter.codeplex.com>


Ο κανόνας για την επανεγγραφή αυτό θα ήταν:



```
# clean up old rules and forward to new URL
RewriteRule ^/?user=(.*)  /users/$1 [NC,R=301]

# rewrite the rule internally
RewriteRule ^/users/(.*)  /?user=$1 [NC,L]

``` ```
os.system('xdg-open "%s"' % foldername)

```

`xdg-open` μπορεί να χρησιμοποιηθεί για τα αρχεία / urls επίσης εντάξει, όλα καλά. το θέμα λύθηκε. η απορία όμως έμεινε.

**τι έκανα:text

άλλαξα τα repos σε testing. αυταααα… ευχαριστώ όλους για την συμπαράσταση!! ευχαριστώ και το [linux-user.gr](http://linux-user.gr) γιατί υπάρχει. καλησπέρα καλώς ήρθες φίλε, τρέξε την εντολή που σου λέει :

sudo dpkg --configure -a

και δώσε μας αποτελέσματα, μέσα σε code tags για να είναι ευανάγνωστα. αν εννοείς μουσικα video τοτε youtube-dl με καποιο frontend οπως το [youtube-dl-gui](https://github.com/mrs0m30n3/youtube-dl-gui) ή το [clickgrab](https://download.clipgrab.org/clipgrab-3.9.6-x86_64.appimage) πιστευω θα σε βολεψουν.

αν εννοεις και με μετρατροπη σε mp3 τοτε και αυτο το υποστηριζουν τα εν λογω frontends αρκει να αλλαξεις το ειδος του αρχειου που σωζεις σε καθε περιπτωση.

ελπιζω να βοηθησα Η τεχνική που περιγράφεται φαίνεται ωραίο, αλλά έχει πολλές παγίδες:


1) ο χρόνος μεταξύ της έναρξης PHP script και άκρο είναι μικρή σε σύγκριση με το χρόνο μετάδοσης? Επίσης, αυτό σώζει το χρήστη για 0,5 δευτερόλεπτα, σύμφωνα με την πηγή σας. Είναι αυτό ένα σημαντικό χρονικό διάστημα για εσάς;


2) αυτή η τεχνική δεν λειτουργεί με gzip buffering εξόδου


3) αν ξεπλύνετε πάρα πολύ συχνά, θα πρέπει να στείλει ένα σχεδόν άδειο πακέτο στο ίδιο επίπεδο, το οποίο θα μπορούσε πραγματικά να αυξήσει το χρόνο φόρτωσης (για αργή, θορυβώδη συνδέσεις).


4) Μόλις ξεπλύνετε, δεν μπορείτε να στείλετε πια κεφαλίδες


5) (δευτερεύον θέμα) η απόκριση του server θα έρθει στην κατατμημένη κωδικοποίηση, που σημαίνει ότι ο πελάτης δεν θα γνωρίζει το μέγεθος των προτέρων (ως εκ τούτου δεν θα εμφανίσει «x% γίνεται» κατά τη λήψη ενός αρχείου).


Από την άλλη πλευρά, αν περιμένετε το σενάριο σας να τρέχει για ένα τραγικό βαθμό (20+ δευτερόλεπτα), μπορεί να χρειαστεί να στείλει κάποια δεδομένα (χώροι, για παράδειγμα) για να κρατήσει το πρόγραμμα περιήγησης από το χρονοδιάγραμμα από τη σύνδεση. Θα μπορούσατε να δημιουργήσει ένα XSLT για να κάνω αυτή τη δουλειά για σας. XSLT έχει σχεδιαστεί ειδικά για τη μετάφραση των δεδομένων XML σε κάποια άλλη μορφή κειμένου, συμπεριλαμβανομένων των XML. Για περισσότερες πληροφορίες σχετικά με XSLT, συστήνω [W3 σχολεία](http://www.w3schools.com/xsl/default.asp) . **Για την «ορθογραφία λάθος» μέρος (Μήπως εννοείτε)**


* Θα μπορούσατε να κάνετε κάποια `LIKE`ερωτήματα στο db π.χ. `LIKE %j%e%a%n%s%`, αλλά αν θέλετε να το κάνετε καλά, θα πρέπει να χρησιμοποιήσετε μια βιβλιοθήκη αναζήτησης όπως αυτό:


	+ <https://github.com/TomLingham/Laravel-Searchy>
	+ <http://tnt.studio/blog/did-you-mean-functionality-with-laravel-scout>



> 
> Μπορείτε να δημοσιεύσετε το αρχείο ρυθμίσεων στον κατάλογο της εφαρμογής σας και να παρακάμψετε τις ρυθμίσεις, εκτελώντας php τεχνίτη πωλητή: δημοσιεύει για να αντιγράψετε τις ρυθμίσεις στο φάκελο config σας όπως searchy.php
> 
> 
> Μπορείτε να ορίσετε το προεπιλεγμένο πρόγραμμα οδήγησης που θα χρησιμοποιηθεί για τις αναζητήσεις στο αρχείο ρυθμίσεων. Οι επιλογές σας (στην παρούσα φάση) είναι: ασαφή, απλό και Levenshtein.
> 
> 
> Μπορείτε επίσης να παρακάμψετε αυτές τις μεθόδους, χρησιμοποιώντας την ακόλουθη σύνταξη κατά την εκτέλεση μιας αναζήτησης:
> 
> 
> 


Με τον καθορισμό [Levenshtein απόσταση](https://en.wikipedia.org/wiki/Levenshtein_distance) μπορείτε να finetune πόσο μακριά μια λέξη μπορεί να είναι.


* Αν χρειάζεστε καλύτερη απόδοση θα πρέπει να εξετάσει κάτι σαν `solr`ή `elasticsearch`για το έργο αυτό.


<https://wiki.apache.org/solr/SpellCheckComponent>
<https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-fuzzy-query.html>


**Για το τμήμα μετάφρασης**


Απλά θα πρέπει να έχει ένα λεξικό έτοιμο σε βάση δεδομένων ή εντοπισμό των αρχείων σας και εκτελέστε το χαμηλότερο σημείο εισόδου και αυτό. Αναμείνετε υψηλή φορές υπολογιστών τόσο για τη διόρθωση ορθογραφίας και της μετάφρασης στον κώδικά σας. > 
> Θέλω να προσθέσω έναν κανόνα που ελέγχει για την παρουσία ενός αρχείου folder.jpg σε κάθε κατάλογο, αλλά για να προσθέσετε αυτό θα κάνει ο κώδικας σημαντικά πιο βρώμικο σε αυτό είναι σημερινή κατάσταση ..
> 
> 
> 


Αυτό δεν φαίνεται κακό. Στην πραγματικότητα τρέχοντα κωδικό σας κάνει πολύ όμορφα, και Sven αναφέρεται ένας καλός τρόπος για να το κάνει, καθώς:


1. Πάρτε μια λίστα με όλα τα αρχεία
2. Ελέγξτε για «απαιτείται» αρχεία


Εσείς απλά θα πρέπει να προσθέσετε στο λεξικό σας μια λίστα με τα απαραίτητα αρχεία:



```
checker = {
  ...
  'required': ['file', 'list', 'for_required']
}

```

Όσον αφορά την ύπαρξη ένας καλύτερος / επεκτάσιμο τρόπο για να το κάνετε αυτό; Δεν είμαι ακριβώς σίγουρος. Θα μπορούσα μόνο να σκεφτώ έναν τρόπο για να ενδεχομένως να αποσύρει τις «πολλαπλές» κανονικές εκφράσεις και να οικοδομήσουν μακριά από την ιδέα του Sven για τη χρήση διαχωριστικό. Έτσι η στρατηγική μου θα ορίζει ένα λεξικό ως εξής (και λυπάμαι δεν ξέρω Python σύνταξη και είμαι ένα αγοράκι να τεμπέλης για να το ψάξει, αλλά θα πρέπει να έχει νόημα. Ο / regex / είναι συντομογραφία για ένα regex ):



```
check_dict = {
  'delim'    : /\-/,
  'parts'    : [ 'Show Name', 'Episode Name', 'Episode Number' ],
  'patterns' : [/valid name/, /valid episode name/, /valid number/ ],
  'required' : ['list', 'of', 'files'],
  'ignored'  : ['.*', 'hidden.txt'],
  'start_dir': '/path/to/dir/to/test/'
}

```

1. Χωρίστε το όνομα του αρχείου με βάση το διαχωριστικό.
2. Ελέγξτε καθένα από τα μέρη.


Επειδή μια ταξινομημένη λίστα του μπορείτε να καθορίσετε τι λείπει μέρη και αν ένα τμήμα δεν ταιριάζει με κανένα σχέδιο είναι ακατάλληλο. Εδώ η `parts`και `patterns`έχουν μια αναλογία 1 προς 1. Δύο σειρές αντί ενός λεξικού επιβάλλει την τάξη.


Αγνοήθηκε και απαραίτητα αρχεία μπορούν να αναφέρονται. Η `.`και `..`τα αρχεία θα πρέπει κατά πάσα πιθανότητα να αγνοηθούν αυτόματα. Ο χρήστης θα πρέπει να επιτρέπεται να εισόδου «globs» η οποία μπορεί να επεκταθεί κέλυφος. Σκέφτομαι εδώ `svn:ignore`τις ιδιότητες, αλλά globbing είναι φυσικό για την εγγραφή αρχείων.


Εδώ `start_dir`θα προεπιλογή στον τρέχοντα κατάλογο, αλλά αν θέλετε ένα ενιαίο αρχείο για να τρέξει αυτοματοποιημένη δοκιμή από μια δέσμη των καταλόγων αυτό θα ήταν χρήσιμο.


Το πραγματικό ελεύθερο άκρο εδώ είναι το πρότυπο διαδρομή και προς την ίδια κατεύθυνση απαιτείται ποιο μονοπάτι για «έγκυρα αρχεία». Πραγματικά δεν θα μπορούσε να καταλήξει σε μια σταθερή ιδέα χωρίς να γράψετε μία μεγάλη κανονική έκφραση και τη λήψη των ομάδων από αυτό ... για να χτίσει ένα πρότυπο. Ένιωσα πολύ όπως γράφει ένα TextMate γλώσσα γραμματική. Αλλά αυτό αρχίζει να απομακρυνθούν από την ευκολία χρήσης. Το πραγματικό πρόβλημα ήταν ότι το πρότυπο μονοπάτι δεν αποτελείται από `parts`, το οποίο έχει νόημα, αλλά προσθέτει πολυπλοκότητα.


Είναι αυτή η στρατηγική σε αρμονία με αυτό που σκέφτεστε;