rafinos Δημοσ. 14 Νοεμβρίου 2011 Δημοσ. 14 Νοεμβρίου 2011 Γεια σας θέλω να φτιάξω μια φόρμα και με το που γράφει ο άλλος κάτι σε κάποιο πεδίο πχ username αν αυτό είναι μικρότερο από 4ις χαρακτήρες να κοκκινίζει το πεδίο.... να γίνεται αυτόματα χωρίς να πρέπει να πατηθεί το submit! Από javascript γνωρίζω κάποια πολύ λίγα πράγματα οπότε αν μου πείτε για jquery μάλλον θα ζαλιστώ!!! Αν ζητάω πολλά μπορείτε να μου το πείτε!!! Θα το καταλάβω
_tasos Δημοσ. 14 Νοεμβρίου 2011 Δημοσ. 14 Νοεμβρίου 2011 Καλησπέρα, Όντως η πιο σωστή προσέγγιση είναι αυτή της jQuery. Αλλά εφόσον θέλεις κάτι πιο απλό, δοκίμασε το εξής > <style type="text/css"> .valid {border:solid 1px #CCC;} .invalid {border:solid 1px #FF0000;} </style> <input type="text" onkeyup="javascript:if(this.value.length <= 3) this.className = 'invalid'; else this.className = 'valid'; " /> Στο onkeyup event, ελέγχεις το μήκος της λέξης που έχει το textbox και ανάλογα του βάζεις τη κλάση invalid ή valid. Μετά με css, ορίζεις πως θα φαίνεται η κάθε κλάση.
iason9575 Δημοσ. 15 Νοεμβρίου 2011 Δημοσ. 15 Νοεμβρίου 2011 http://www.position-relative.net/creation/formValidator/ Άν έχεις λίγο χρόνο αξίζει να ασχοληθείς με το jQuery γενικοτερα, γιατί είναι κάτι που θα το βρείς μπροστά σου σε όποιο έργο και αν κάνεις στο μέλλον.
theomalegan Δημοσ. 16 Νοεμβρίου 2011 Δημοσ. 16 Νοεμβρίου 2011 http://www.position-relative.net/creation/formValidator/ Άν έχεις λίγο χρόνο αξίζει να ασχοληθείς με το jQuery γενικοτερα, γιατί είναι κάτι που θα το βρείς μπροστά σου σε όποιο έργο και αν κάνεις στο μέλλον. Επίσης είναι πολύ πιο απλή από ότι αρχικά φαίνεται.
rafinos Δημοσ. 16 Νοεμβρίου 2011 Μέλος Δημοσ. 16 Νοεμβρίου 2011 Επίσης είναι πολύ πιο απλή από ότι αρχικά φαίνεται. Το πιστεύεις ότι αυτό που με "φοβίζει" στην jquery είναι ότι την θεωρώ υπερβολικά πολύπλοκη;
bnvdarklord Δημοσ. 16 Νοεμβρίου 2011 Δημοσ. 16 Νοεμβρίου 2011 Αυτό που ζητάς γινεται πολύ εύκολα με HTML5 αλλα δεν ξερω ποιοι browsers δεν το υποστηριζουν. Λογικα πλεον όλοι. Oρίστε ενα παραδειγμα αυτού που θες. Το 1 input ειναι κοκκινο μεχρι να ξεπεράσεις τους 3 χαρακτήρες. > <!DOCTYPE html> <html> <head> <title>Web Forms with HTML 5</title> <style type="text/css"> input:required { border: 1px red solid; } input:invalid { background-color: red; color: white; } </style> </head> <body> <form> <input type="text" required pattern="[a-zA-Z0-9]{4,}"> <br> <input type="text"> </forum> </body> </html>
rafinos Δημοσ. 18 Νοεμβρίου 2011 Μέλος Δημοσ. 18 Νοεμβρίου 2011 Άντε και χρησιμοποιώ εγώ jquery.... για να κάνω check για το αν υπάρχει το username και το email θα πρέπει να φτιάξω php αρχείο για το username και άλλο php αρχείο για το email;;;; Αν ξέρει κάποιος ξέρει παράδειγμα και για τα δύο μαζί ας μου το δώσει να το μελετήσω γιατί εγώ δεν βρίσκω!!! Αν έχει βίντεο ακόμα καλύτερα
_tasos Δημοσ. 18 Νοεμβρίου 2011 Δημοσ. 18 Νοεμβρίου 2011 Για να κάνεις check αν υπάρχει το username και το email θα πρέπει να φτιάξεις κάποια php scripts. Με jQuery, και την ajax συνάρτηση της, μπορείς να τα καλέσεις και να ενημερώσεις το χρήστη σχετικά. 'Εστω ότι το username_exists.php απαντάει με true αν υπάρχει το username ή false αν δεν υπάρχει. Ενδεικτικά, θα μπορούσες να γράψεις κάτι τέτοιο: > function check_username() { var uname = jQuery('#username').val(); // Παίρνω το username που έδωσε ο χρήστης στο textbox με id=username $.ajax({ url: "username_exists.php?username=" + uname, // Εδώ ορίζω σαν παράμετρο το username που θέλω να τσεκάρω στο php script. context: document.body, success: function(data){ if(data == "true") alert('Το username υπάρχει ήδη!'); else alert('Το username είναι διαθέσιμο'); }, error: function(){ alert('Πρόβλημα με ajax'); } }); }
rafinos Δημοσ. 19 Νοεμβρίου 2011 Μέλος Δημοσ. 19 Νοεμβρίου 2011 Ωραία! Αν κάνω έλεγχο για το username και το email στο ίδιο αρχείο τι γίνεται;;;; Απλα φτιάχνω μια συνάρτηση για το email και βάζω μετά το "?" την μεταβλητή email;;;
rafinos Δημοσ. 19 Νοεμβρίου 2011 Μέλος Δημοσ. 19 Νοεμβρίου 2011 To ξέρω ότι σας έχω πρίξει αλλά.......... ελπίζω να καταλαβένεται την κατάσταση μου Στον παρακάτω php κώδικα τι αλλαγές θα πρέπει να κάνω ώστε να το χρησιμοποιήσω για έλεγχο του username και του email μέσω jquery???? ><?php //Ορισμός των μεταβλητών και εκχώρηση τιμών σε αυτές $username = mysql_escape_string($_POST['username']); $password = md5(mysql_escape_string($_POST['password'])); $email = mysql_escape_string($_POST['email']); $name = mysql_escape_string($_POST['name']); $surname = mysql_escape_string($_POST['surname']); $day = $_POST['day']; $month = $_POST['month']; $year = $_POST['year']; $date = "$year-$month-$day"; if($username){ include "connect.php"; //Έλεγχος για το αν υπάρχει το username $query = mysql_query("SELECT username FROM user_data WHERE username='$username'"); $count = mysql_num_rows($query); if($count!=0){ die("Το ψευδώνυμο υπάρχει ήδη! Παρακάλω επιλέξτε κάποιο άλλο!"); } //Έλεγχος για το αν υπάρχει το email $query = mysql_query("SELECT email FROM user_data WHERE username='$email'"); $count = mysql_num_rows($query); if($count!=0){ die("Το Email υπάρχει ήδη!"); } //Εκχώρηση δεδομένων στη βάση mysql_query("INSERT INTO user_data(username,password,name,surname,birthdate,email) VALUES('$username','$password','$name','$surname','$date','$email')") or die("Η εγγραφή δεν μπόρεσε να ολοκληρωθεί!"); $register = mysql_affected_rows(); if($register!=0){ echo "Η εγγραφή ολοκληρώθηκε με επιτυχία!"; } } ?> </body> </html>
rafinos Δημοσ. 20 Νοεμβρίου 2011 Μέλος Δημοσ. 20 Νοεμβρίου 2011 Με τον παρακάτω κώδικα μου εμφανίζεται το μήνυμα για το αν είναι διαθέσιμο ή οχι το username αλλά δεν εμφανίζεται το μήνυμα "διαλέξτε ένα ψευδώνυμο" εξαρχής αλλά μόνο αν γράψω κάτι και το σβήσω... ποιο είναι το λάθος;;;;;; *******Τελικά το πρόβλημα ήταν το "if(isset($_POST['username']))" γιατί το είχα βάλει επειδή είχα display error και δεν το ήθελα αλλά έκανα το display_errors τις Php off και λύθηκε το πρόβλημα αρχείο test.php > </head> <body onload="user_check();"> <form name="form"> Username:<input type="text" id="username" name="username"> <br /> <input type="submit" value="submit"> <br/> <div id="feedback"></div> </form> <div id="feedback"></div> </body> </html> αρχείο user2.php > <?php if(isset($_POST['username'])){ include('connect.php'); $username = mysql_real_escape_string($_POST['username']); $query = mysql_query("SELECT username FROM user_data WHERE username='$username'"); $count = mysql_num_rows($query); if($username==NULL){ echo "Διαλέξτε ένα ψευδώνυμο!"; } if(strlen($username)<=3){ echo "Πολύ μικρό!"; } else{ if($count<1){ echo "Το ψευδώνυμο είναι διαθέσιμο!"; }else{ echo "Το ψευδώνυμο δεν είναι διαθέσιμο!"; } } } ?> και το αρχείο check.js > function user_check(){ $(document).ready(function() { $('#feedback').load('user2.php').show(); $('#username').keyup(function() { $.post('user2.php', {username: form.username.value}, function(result) { $('#feedback').html(result).show(); }); }); }); }
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα