elenxos formas

Κώδικας, πληροφορίες, ερωτήσεις και απαντήσεις σχετικές με την JavaScript.

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
panosru
WebDev Moderator
Δημοσιεύσεις: 1885
Εγγραφή: 13 Σεπ 2005 16:13
Τοποθεσία: Camp

elenxos formas

Δημοσίευση από panosru » 31 Οκτ 2005 17:28

paidia eimai poly neos sthn java script basika den poly asxoloume me js script. pos mporo sthn forma opou akolouthei na elenxei to eidos tou arxiou opou thelei na kano upload ston server o xrhsths, basika enan elenxo thelo na kanei opou an to extension tou arxiou den einai px gif|jpg|png|tif na tou petae mhnhma pos to arxeio opou exei epileksei den einai symbato a kai episeis na elenxei kai to megethos tou arxiou se periptosh pou ksepernaei ta 100kb (102400bytes) na tou petaei mhnhma pos to arxeio opou epelkse einai megalo.

Κώδικας: Επιλογή όλων

<form action="?id=cp&amp;adm=prosfores&amp;func=images&upload=1" enctype="multipart/form-data" method="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="102400">
<p><strong>File to Upload&#58;</strong> <input type="file" name="fileupload"></p>
<p><input type="submit" value="upload!"></p>
</form>
mporo na to kano me php ayto alla thelo na apofygo to fortoma tis selidas px thelo na to kano na ginete instant.

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

elenxos formas

Δημοσίευση από fafos » 31 Οκτ 2005 18:10

Gia na elenkseis to eidous arxeiou tha vreis se javascript... gia to megethos den nomizo... an pali ta katafereis dose mas thn dieuthinsh na paiksoume ligo me ton server sou :D

panosru
WebDev Moderator
Δημοσιεύσεις: 1885
Εγγραφή: 13 Σεπ 2005 16:13
Τοποθεσία: Camp

elenxos formas

Δημοσίευση από panosru » 31 Οκτ 2005 18:21

h emena den mou kobei h den ksero kai ego ti ftaiei! lol to diabasa ena soro fores kai akoma den katalaba ti les lool

basika enoeis pos prepei na bro kapoio etoimo js script gia na elenxei to eidos tou arxeiou?
to allo gia na paiksoume me ton server sou ti enoeis? xD

panosru
WebDev Moderator
Δημοσιεύσεις: 1885
Εγγραφή: 13 Σεπ 2005 16:13
Τοποθεσία: Camp

elenxos formas

Δημοσίευση από panosru » 31 Οκτ 2005 19:07

basika to ekana se php opote eimai ok tora.

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

elenxos formas

Δημοσίευση από fafos » 31 Οκτ 2005 20:06

Ta validations mia formas pou anevazei arxeia POTE den prepei na einai se javascript giati o kathenas anevazei oti thelei.. opote meta arxizoun ta panhgyria kai esy psaxneis na vreis apo pou se hackarane... :D

Άβαταρ μέλους
Rapid-eraser
WebDev Moderator
Δημοσιεύσεις: 6851
Εγγραφή: 05 Απρ 2003 17:50
Τοποθεσία: Πειραιάς
Επικοινωνία:

elenxos formas

Δημοσίευση από Rapid-eraser » 31 Οκτ 2005 21:23

Basika n sosti topo8etisi eivai oti to validation se eva script dev prepei va givete movo client side...
O Server side elegxos twv inputs eivai pio simavtikos
giati eivai aftos pou eivai o ebalotos se epip8eseis.

O client side elegxos briskete gia va diefkolivei tnv simplirosi mias formas kai va mas emploutizei ta interface ka8os kai va mas glitovouv apo xrovo.

So prepei va exeis kai tous dio elegxous gia va eisai kalimevos.
Cu, Rapid-eraser, Tα αγαθά copies κτώνται.
Love is like oxygen, You get too much you get too high
Not enough and you're gonna die, Love gets you high

Άβαταρ μέλους
skeftomilos
Script Master
Δημοσιεύσεις: 2888
Εγγραφή: 07 Ιαν 2005 07:22
Τοποθεσία: Αθήνα

elenxos formas

Δημοσίευση από skeftomilos » 01 Νοέμ 2005 01:19

Ένα απλό παράδειγμα:

Κώδικας: Επιλογή όλων

<html>
  <head>
    <script type="text/javascript">
      function getFileExtension&#40;path&#41; &#123; return path.match&#40;/&#91;^\/\\&#93;+\.&#40;&#91;^\/\.\\&#93;+&#41;$/&#41; ? RegExp.$1 &#58; '' &#125;
      function validateForm&#40;form&#41; &#123;
        if &#40;getFileExtension&#40;form.file1.value&#41; != 'gif'&#41; &#123;
          alert&#40;'Μόνο gif παρακαλώ!'&#41;; return false
        &#125;
      &#125;
    </script>
  </head>
  <body>
    <form method="post" enctype="multipart/form-data" onsubmit="return validateForm&#40;this&#41;">
      <input type="hidden" name="MAX_FILE_SIZE" value="100000">
      <input type="file" name="file1"><br>
      <input type="submit">
    </form>
  </body>
</html>
- Η συνάρτηση getFileExtension θα μπορούσε να γραφεί και με πιο απλό τρόπο, χωρίς Regular Expressions. Απλά την είχα έτοιμη και την έβαλα.
- Η συνάρτηση validateForm πρέπει εκτός από το alert να επιστρέφει και false για την ακύρωση του submit.
- Στο χειριστή συμβάντος onsubmit της φόρμας πρέπει να υπάρχει η εντολή return για να έχει αποτέλεσμα το πιθανό false και να ακυρωθεί το submit.
- Το κρυφό πεδίο MAX_FILE_SIZE σύμφωνα με το documentation της PHP είναι μια υπόδειξη στον browser να μη δεχτεί αρχεία μεγαλύτερα από την τιμή του πεδίου, αλλά οι browsers αδιαφορούν. Οπότε καλό είναι να είναι γραμμένο κάπου το όριο με απλή HTML, για να ξέρει ο χρήστης τι μπορεί να ανεβάσει. Είναι κρίμα να περιμένει μισή ώρα για ένα μεγάλο upload, για να πάρει τελικά το μήνυμα από τον server ότι το αρχείο δεν έγινε δεκτό, και ότι έχασε τσάμπα το χρόνο του.
The pure and simple truth is rarely pure and never simple. Ο μη νους δε σκέπτεται μη σκέψεις για το τίποτα.

Απάντηση

Επιστροφή στο “JavaScript και Frameworks”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 2 επισκέπτες