apagoreush english H metatroph tous se greek??

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

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

Απάντηση
Άβαταρ μέλους
bilios
Δημοσιεύσεις: 262
Εγγραφή: 29 Ιουν 2005 11:31
Τοποθεσία: Sahara..

apagoreush english H metatroph tous se greek??

Δημοσίευση από bilios » 05 Σεπ 2006 02:44

Geia sas!!

Meta apo polu kairo kano post mipos kapoios xerei na mou pei pos mporo na kano sta input pedia mou na mhn mporei o allos na eisagei stoixeia se english..

vrhka ena java prog pou to kanei alla ego thelo javascript ( xero vevaia oti den einai polu asfales alla se php den pisteuo oti uparxei.. ).

kathe idea euprosdekth!

Eyxaristo, Billis.

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

apagoreush english H metatroph tous se greek??

Δημοσίευση από skeftomilos » 05 Σεπ 2006 13:42

Κάτι τέτοιο; :)

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

<html>
  <head>
    <title>No-English</title>
    <script type="text/javascript">
      function eatEnglish&#40;e&#41; &#123;
        e = e || window.event || &#123;&#125;
        var charCode = e.keyCode || e.charCode || 0
        var english = &#40;&#40;charCode >= 65&#41; && &#40;charCode <= 90&#41;&#41; || &#40;&#40;charCode >= 97&#41; && &#40;charCode <= 122&#41;&#41;
        return !english
      &#125;
    </script>
  </head>
  <body>
    <form>
      <input onkeypress="return eatEnglish&#40;arguments&#91;0&#93;&#41;">
      <input type="submit">
    </form>
  </body>
</html>
The pure and simple truth is rarely pure and never simple. Ο μη νους δε σκέπτεται μη σκέψεις για το τίποτα.

Άβαταρ μέλους
alkisg
Δημοσιεύσεις: 265
Εγγραφή: 03 Ιουν 2005 11:53
Τοποθεσία: Ιωάννινα
Επικοινωνία:

apagoreush english H metatroph tous se greek??

Δημοσίευση από alkisg » 05 Σεπ 2006 15:07

@bilios: μ' αρέσει που από τη μία δε θες greeklish και από την άλλη γράφεις σε greeklish!

Όμως, όταν κάποιος θελήσει να γράψει κάτι στα αγγλικά, π.χ. ένα site ή το email του, δε θα το δέχεται... Θέλει προσοχή το ζήτημα.

Άβαταρ μέλους
bilios
Δημοσιεύσεις: 262
Εγγραφή: 29 Ιουν 2005 11:31
Τοποθεσία: Sahara..

apagoreush english H metatroph tous se greek??

Δημοσίευση από bilios » 05 Σεπ 2006 21:13

skeftomilos opos panta to the rescue!!

thanks alla opos leei kai o alkis pano tha dexomai as poume se mia forma onoma eponumo kai email, mporo me to scriptaki sou na apagoreuso se ena mono input field h se duo na mhn eisagontai agglika h auto to scriptaki einai gia olh thn selida?

fusika xero oti an o allos exei apenergopihmena ta javascript mporei na valei oti tou katsei gia auto rothsa mipos ginetai kati se php alla autes oi spanies periptoseis den me xalane kiolas..

eyxaristo polu!

@alkisg den eimai polemios tou greeklish, apla thelo na mhn mporei na kanei kapoios egrafh se ellhnika kai allos egrafh se agglika, mou kanei ano kato thn seira..

Άβαταρ μέλους
alkisg
Δημοσιεύσεις: 265
Εγγραφή: 03 Ιουν 2005 11:53
Τοποθεσία: Ιωάννινα
Επικοινωνία:

apagoreush english H metatroph tous se greek??

Δημοσίευση από alkisg » 05 Σεπ 2006 23:03

Μια χαρά είναι το σκριπτάκι του skeftomilou, ισχύει μόνο για τα input που βάζεις και το onkeypress.

Αυτό που έλεγα είναι αν στο ίδιο text box χρειαστεί να γράψεις και αγγλικά, τότε δε θα γίνεται... Π.χ. αυτά που έγραψα τώρα, που έχουν και αγγλικά, δε θα μπορούσα να τα γράψω.

Άβαταρ μέλους
bilios
Δημοσιεύσεις: 262
Εγγραφή: 29 Ιουν 2005 11:31
Τοποθεσία: Sahara..

apagoreush english H metatroph tous se greek??

Δημοσίευση από bilios » 08 Σεπ 2006 01:48

pos den ginetai...apla den vazeis to onkeypress...

tromero script skeftomilos..mesto kai mikro..
thanks!

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

apagoreush english H metatroph tous se greek??

Δημοσίευση από skeftomilos » 08 Σεπ 2006 19:25

Μπορεί να γίνει και πιο μαζεμένο:

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

function eatEnglish&#40;e&#41; &#123;
  e = e || window.event || &#123;&#125;
  var charCode = e.keyCode || e.charCode || 0
  var english = String.fromCharCode&#40;charCode&#41;.match&#40;/&#91;a-z&#93;/i&#41;
  return !english
&#125;
...ή αν προτιμάς...

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

function eatEnglish&#40;e&#41; &#123;
  e = e || window.event || &#123;&#125;
  return !String.fromCharCode&#40;e.keyCode || e.charCode || 0&#41;.match&#40;/&#91;a-z&#93;/i&#41;
&#125;
Can PHP do that? :)
The pure and simple truth is rarely pure and never simple. Ο μη νους δε σκέπτεται μη σκέψεις για το τίποτα.

zeppos
Δημοσιεύσεις: 431
Εγγραφή: 26 Μαρ 2006 10:43
Τοποθεσία: Kyklades
Επικοινωνία:

apagoreush english H metatroph tous se greek??

Δημοσίευση από zeppos » 10 Σεπ 2006 09:47

Πρόσεξα οτι εάν κάποιος κάνει copy-past στο input της java function γράφει κανονικά αγγλικά. Ενώ με μια reg_expretion php διαγράφει ή αντικαθιστά οτι θέλεις.

zeppos
Δημοσιεύσεις: 431
Εγγραφή: 26 Μαρ 2006 10:43
Τοποθεσία: Kyklades
Επικοινωνία:

apagoreush english H metatroph tous se greek??

Δημοσίευση από zeppos » 10 Σεπ 2006 11:07

Για να γίνει κατανοητό τι εννοώ παραθέτω 2 αρχεία. Την φόρμα με τo καλό κόλπο της Javascrit που δεν αφήνει να πληκτρολογήσεις Αγγλικά (form_eat.php):
<html>
<head>
<title>No-English</title>
<script type="text/javascript">
function eatEnglish(e) {
e = e || window.event || {}
return !String.fromCharCode(e.keyCode || e.charCode || 0).match(/[a-z]/i)
}
</script>
</head>
<body>
<form action="eat_en.php" method="post">
E-mail: <input type="text" name="email"><br>
Όνομα: <input type="text" name="name" onkeypress="return eatEnglish(arguments[0])"><br>
Σχόλια: <input type="text" name="text" onkeypress="return eatEnglish(arguments[0])"><br>
<input type="submit" name="submit" Value="Αποστολή">
<input type="reset" name="reset" value="Διαγραφή">
</form>
</body>
</html>
Και το μικρό αρχείο eat_en.php που κάνει όλη την υπόλοιπη δουλειά αν επιμένουν να γράψουν Αγγλικά με copy and past, παρόλη την απαγόρευση:
<?php
$email=$_POST['email'];
$name=$_POST['name'];
$text = $_POST['text'];
$mg="Ξέχασες να συμπληρώσεις κάποιο πεδίο! Παρακαλώ πήγαινε <a href='#' OnClick='history.go(-1)'>ΠΙΣΩ</a> και επανέλαβε";
$text = eregi_replace("[A-Za-z]", "", $text);
$name = eregi_replace("[A-Za-z0-9]", "", $name);

if($HTTP_POST_VARS['submit']) {
if($text==''||$email==''||$name==''){
echo $mg;
} else {
echo "E-mail: " . $email . "<br>Όνομα : " . $name . "<br>Σχόλια : " . $text;
}
}
?>

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

apagoreush english H metatroph tous se greek??

Δημοσίευση από skeftomilos » 11 Σεπ 2006 02:19

Πολύ σωστά zeppos, ο έλεγχος πρέπει πάντα να γίνεται και server-side. Εκτός από copy-paste ο χρήστης έχει και άλλους τρόπους να παρακάμψει το validation. Ο απλούστερος είναι να απενεργοποιήσει τη JavaScript. Ή μπορεί να αλλάξει την τιμή του πεδίου με JavaScript, γράφοντας στη location bar...

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

javascript&#58;void&#40;document.forms&#91;0&#93;.elements&#91;'name'&#93;.value='IamHacker'&#41;
The pure and simple truth is rarely pure and never simple. Ο μη νους δε σκέπτεται μη σκέψεις για το τίποτα.

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

apagoreush english H metatroph tous se greek??

Δημοσίευση από panosru » 18 Σεπ 2006 01:15

skeftomilos έγραψε:Can PHP do that? :)
iiiiiii re c thodori ti kakos pou eisai :lol: :hammer: :P

oraia ayta, alla ego den ta pao :P (molis me kanan ban apo ena forum epidi aniomoun na grapso greek :P)

Άβαταρ μέλους
cherouvim
Script Master
Δημοσιεύσεις: 3137
Εγγραφή: 13 Ιούλ 2005 22:56
Τοποθεσία: Athens, Greece
Επικοινωνία:

apagoreush english H metatroph tous se greek??

Δημοσίευση από cherouvim » 24 Οκτ 2006 16:26

Τι hackιά είναι αυτή; Αναφέρομαι στο bold κομμάτι.

e = e || window.event || {}

Άβαταρ μέλους
alkisg
Δημοσιεύσεις: 265
Εγγραφή: 03 Ιουν 2005 11:53
Τοποθεσία: Ιωάννινα
Επικοινωνία:

apagoreush english H metatroph tous se greek??

Δημοσίευση από alkisg » 24 Οκτ 2006 17:29

Για να μην κάθεται να κάνει if στη συνέχεια, και επειδή χρησιμοποιεί το e σαν object, αν τρέχει σε κάποιο browser που δεν ορίζει ούτε το e ούτε το window.event, κάνει το e άδειο object.
Έτσι δε θα χτυπήσει παρακάτω όταν ελέγχει το e.keycode.

Απάντηση

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

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

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