Πώς μπορώ να πάρω με mouseover τα fields ενός link στην php π.χ. index.php?category=3&id=5

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

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

Απάντηση
g_p
Δημοσιεύσεις: 134
Εγγραφή: 28 Μάιος 2010 12:43

Πώς μπορώ να πάρω με mouseover τα fields ενός link στην php π.χ. index.php?category=3&id=5

Δημοσίευση από g_p » 09 Μάιος 2011 13:15

Παιδιά γεια σας,

φτιάχνω ενά test website με php και mysql


Ἐχω το αρχικό αρχείο index.php το οποίο σε κατευθύνει στο αρχείο
index_next.php στο οποίο έχω μέσα μία φόρμα με hidden fields
και action στο index.php,

Δηλαδή index.php -> index_next.php -> index.php

e.g. index_next.php

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

<form action="index.php" method="get" name="myform" id="myform"/>
   <input name="id" type="hidden" value="<? echo $_GET&#91;'id'&#93;;?>"/>
   <input name="category" type="hidden" value="<? echo $_GET&#91;'category'&#93;;?>"/>
   <input name="level" type="hidden" value="<? echo $_GET&#91;'level'&#93;;?>"/>
</form>
Οπότε όταν ο χρήστης κάνει κλικ σε κάποιο link
π.χ. localhost/index.php?category=3&id=500&level=1
παίρνει το id,to category kai to level.

Θέλω κάνοντας mouseover σε ένα link να εμφανίζεται
πληροφορία μέσα σε ένα div δυναμικά, χωρίς να κάνω κλικ
στο link!


Το θέμα μου είναι όταν κάνω mouseover πάνω σε ένα link,
πώς μπορώ να πάρω το το id,category και level??

Γίνεται με mouseover να πάρω τα hidden fields
και να τα δώσω σαν ορίσματα στις συναρτήσεις για να ψάξουνε στη βάση??

Ευχαριστώ

Άβαταρ μέλους
Christianago
Δημοσιεύσεις: 332
Εγγραφή: 12 Νοέμ 2009 13:36

Πώς μπορώ να πάρω με mouseover τα fields ενός link στην php π.χ. index.php?category=3&id=5

Δημοσίευση από Christianago » 09 Μάιος 2011 13:36

Θα γραψεις μια συναρτηση ajax που οταν κανει mouseover η focus πανω στο λινκ να εκτελειται αυτη η συναρτηση.
Η συναρτηση ajax θα δεχεται ως ορισμα το αντικειμενο που θες να εμφανισεις τα
id,category και level του και αφου κανει την κληση θα επιστρεφει σε ενα div αυτες τις πληροφοριες.
Σε αυτην την περιπτωση δε χρειαζεται να φτιαξεις κρυφα πεδια που θα στελνουν ως παραμετρο το αντικειμενο
του οποιου τις πληροφοριες θες να εμφανισεις, δεδομενου οτι εχεις ορισει στατικα τα links σου.

Άβαταρ μέλους
dimsis
Reporter
Δημοσιεύσεις: 7994
Εγγραφή: 25 Ιούλ 2001 03:00

Πώς μπορώ να πάρω με mouseover τα fields ενός link στην php π.χ. index.php?category=3&id=5

Δημοσίευση από dimsis » 09 Μάιος 2011 13:57

... ή αν το id είναι το μοναδικό κλειδί του πίνακα, στο αρχείο που θα εκτελεστεί το query τράβα πρώτα ένα select fieldslist form tabletade where id=$id ώστε να πάρεις και τα category και level, τα οποία θα χρησιμοποιήσεις στη συνέχεια ...

g_p
Δημοσιεύσεις: 134
Εγγραφή: 28 Μάιος 2010 12:43

Πώς μπορώ να πάρω με mouseover τα fields ενός link στην php π.χ. index.php?category=3&id=5

Δημοσίευση από g_p » 09 Μάιος 2011 14:03

Christianago έγραψε:Θα γραψεις μια συναρτηση ajax που οταν κανει mouseover η focus πανω στο λινκ να εκτελειται αυτη η συναρτηση.
Η συναρτηση ajax θα δεχεται ως ορισμα το αντικειμενο που θες να εμφανισεις τα
id,category και level του και αφου κανει την κληση θα επιστρεφει σε ενα div αυτες τις πληροφοριες.
Σε αυτην την περιπτωση δε χρειαζεται να φτιαξεις κρυφα πεδια που θα στελνουν ως παραμετρο το αντικειμενο
του οποιου τις πληροφοριες θες να εμφανισεις, δεδομενου οτι εχεις ορισει στατικα τα links σου.
Ευχαριστώ για την απάντηση,
με javascript δεν μπορεί να γίνει κατι??

Ajax δεν ξέρω καθόλου!
Δεν υπάρχει άλλος τρόπος να γίνει??

Επισης, αυτό που λες με την ajax, υπάρχει κανένα σχετικό link να διαβάσω??

ευχαριστώ

g_p
Δημοσιεύσεις: 134
Εγγραφή: 28 Μάιος 2010 12:43

Πώς μπορώ να πάρω με mouseover τα fields ενός link στην php π.χ. index.php?category=3&id=5

Δημοσίευση από g_p » 09 Μάιος 2011 14:05

dimsis έγραψε:... ή αν το id είναι το μοναδικό κλειδί του πίνακα, στο αρχείο που θα εκτελεστεί το query τράβα πρώτα ένα select fieldslist form tabletade where id=$id ώστε να πάρεις και τα category και level, τα οποία θα χρησιμοποιήσεις στη συνέχεια ...
Ευχαριστώ για την απάντηση,
θα μπορούσες να μου εξηγήσεις τι ακριβώς εννοείς
γιατί μπερδεύτηκα λίγο??

Αυτό που μου λες που θα μπορούσα να το χρησιμοποιήσω?

ευχαριστώ

Άβαταρ μέλους
Christianago
Δημοσιεύσεις: 332
Εγγραφή: 12 Νοέμ 2009 13:36

Πώς μπορώ να πάρω με mouseover τα fields ενός link στην php π.χ. index.php?category=3&id=5

Δημοσίευση από Christianago » 09 Μάιος 2011 14:33

g_p έγραψε:
Christianago έγραψε:Θα γραψεις μια συναρτηση ajax που οταν κανει mouseover η focus πανω στο λινκ να εκτελειται αυτη η συναρτηση.
Η συναρτηση ajax θα δεχεται ως ορισμα το αντικειμενο που θες να εμφανισεις τα
id,category και level του και αφου κανει την κληση θα επιστρεφει σε ενα div αυτες τις πληροφοριες.
Σε αυτην την περιπτωση δε χρειαζεται να φτιαξεις κρυφα πεδια που θα στελνουν ως παραμετρο το αντικειμενο
του οποιου τις πληροφοριες θες να εμφανισεις, δεδομενου οτι εχεις ορισει στατικα τα links σου.
Ευχαριστώ για την απάντηση,
με javascript δεν μπορεί να γίνει κατι??

Ajax δεν ξέρω καθόλου!
Δεν υπάρχει άλλος τρόπος να γίνει??

Επισης, αυτό που λες με την ajax, υπάρχει κανένα σχετικό link να διαβάσω??

ευχαριστώ
http://www.tizag.com/ajaxTutorial/

Ajax θα γραψεις με javascript. Εξου και το ονομα. Ασυγχρονη javascript.
Διαβασε και παιξε με το tutorial θα τα καταλαβεις.

Άβαταρ μέλους
dimsis
Reporter
Δημοσιεύσεις: 7994
Εγγραφή: 25 Ιούλ 2001 03:00

Πώς μπορώ να πάρω με mouseover τα fields ενός link στην php π.χ. index.php?category=3&id=5

Δημοσίευση από dimsis » 09 Μάιος 2011 15:12

g_p έγραψε:Ευχαριστώ για την απάντηση,
θα μπορούσες να μου εξηγήσεις τι ακριβώς εννοείς
γιατί μπερδεύτηκα λίγο??
Αυτό που μου λες που θα μπορούσα να το χρησιμοποιήσω?
αυτό που σου 'γραψα, είναι πρόσθετο σε αυτό που σου γραψε ο Christianago. Αν το ID είναι το μοναδικό κλειδί, δεν χρειάζεται καν να περνάνε οι υπόλοιπες παράμετροι, αφού με ένα query στην σελίδα που θα τρέχεις το query για να γεμίσει με περιεχόμενο το div, μπορείς βάση του id να βρεις και τα άλλα δυο.

Ένας μπακαλίστικος τρόπος για να πάρεις τις τιμές των μεταβλητών σου με javascript είναι:

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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http&#58;//www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http&#58;//www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Get link parameters</title>
<style type="text/css">
body &#123; background-repeat&#58;no-repeat;background-size&#58;100%;text-shadow&#58; 1px 1px 2px #666; margin&#58;0;padding&#58;0;color&#58;#fff;font-family&#58;"Trebuchet MS",Verdana,Arial&#125;

</style>
</head>
<script language="JavaScript" type="text/javascript">
 function getparams&#40;lnk&#41;
  &#123;
    var parameters = lnk.substring&#40;1&#41;.split&#40;"&"&#41;;
   	var temp = parameters&#91;0&#93;.split&#40;"="&#41;;
    t_category=unescape&#40;temp&#91;1&#93;&#41;;
    temp = parameters&#91;1&#93;.split&#40;"="&#41;;
    t_id=unescape&#40;temp&#91;1&#93;&#41;;
    temp = parameters&#91;2&#93;.split&#40;"="&#41;;
    t_level=unescape&#40;temp&#91;1&#93;&#41;;
    alert&#40;t_category + ' ' + t_id + ' ' + t_level&#41;;
  &#125;
</script>
</head>
<body>

	<h1>Split values</h1>
	<ul>
	<li><a href="localhost/index.php?category=3&id=500&level=1" onmouseover="getparams&#40;this.href&#41;">link 1</a></li>
	<li><a href="localhost/index.php?category=23&id=12&level=2" onmouseover="getparams&#40;this.href&#41;">link 2</a></li>
	<li><a href="localhost/index.php?category=55&id=42&level=3" onmouseover="getparams&#40;this.href&#41;">link 3</a></li>
	<li><a href="localhost/index.php?category=88&id=53&level=4" onmouseover="getparams&#40;this.href&#41;">link 4</a></li>
	</ul>

</body>
</html>
Το t_category έχει την τιμή της category, το t_id του id και η t_level του level...

demo: http://avadaz.com/playground/geturlvalues.htm

g_p
Δημοσιεύσεις: 134
Εγγραφή: 28 Μάιος 2010 12:43

Πώς μπορώ να πάρω με mouseover τα fields ενός link στην php π.χ. index.php?category=3&id=5

Δημοσίευση από g_p » 09 Μάιος 2011 19:05

Ευχαριστώ πολύ για την απάντηση!
Οντως πολύ βοηθητικό!

Οπότε εγώ κάνοντας mouseover θα καλώ μια συνάρτηση στην php
p.x. function RetImage(id,category,level) {

}

Δεν το έχω δοκιμάσει αυτό μέσα απο javascript να καλώ php

Τις συναρτήσεις τις καλώ μέσα από την index.php
κι έχω χωρίσει τα template από τον κώδικα php.

Θα έχω πρόβλημα?Δηλαδή κάνοντας mouseover λογικά
θα μπορεί να δει τις συναρτήσεις που καλώ

Θα το δοκιμασω γι να δω πως θα ενσωματωθεί στον δικο μου κώδικα

Ευχαριστώ

Άβαταρ μέλους
Christianago
Δημοσιεύσεις: 332
Εγγραφή: 12 Νοέμ 2009 13:36

Πώς μπορώ να πάρω με mouseover τα fields ενός link στην php π.χ. index.php?category=3&id=5

Δημοσίευση από Christianago » 09 Μάιος 2011 19:27

Οταν υλοποιεις ajax θυμισου να εχεις html και php παντα σε διαφορετικες σελιδες.

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

Πώς μπορώ να πάρω με mouseover τα fields ενός link στην php π.χ. index.php?category=3&id=5

Δημοσίευση από korgr » 09 Μάιος 2011 21:36

g_p έγραψε:
Δεν το έχω δοκιμάσει αυτό μέσα απο javascript να καλώ php
Για να καλέσεις την php από javascript πρέπει να χρησιμοποιήσεις Ajax (δεν φταίω εγώ που είναι συνέχεια μπροστά σου).

Διαφορετικά, μπορείς όταν πρωτοτρέξει η php σου για να δημιουργήσει το page, να προετοιμάσεις όλα τα divs σου με τις πληροφορίες που θες να έχουν αλλά με style=display:none"

Μετά με js, onmouseover σε κάθε link θα κάνεις show - hide to κατάλληλο div
Αυτό ενδείκνυται να γίνει με jquery με την toggle()

Άβαταρ μέλους
jpk
Δημοσιεύσεις: 441
Εγγραφή: 09 Μαρ 2011 21:17

Πώς μπορώ να πάρω με mouseover τα fields ενός link στην php π.χ. index.php?category=3&id=5

Δημοσίευση από jpk » 10 Μάιος 2011 00:49

g_p έγραψε:Ευχαριστώ πολύ για την απάντηση!
Οντως πολύ βοηθητικό!

Οπότε εγώ κάνοντας mouseover θα καλώ μια συνάρτηση στην php
p.x. function RetImage(id,category,level) {

}

Δεν το έχω δοκιμάσει αυτό μέσα απο javascript να καλώ php
g_p Στο πρώτο σου μύνημα λες ότι το μόνο που θες είναι το id,category και level, όταν κάποιος περνάει πάνω από ένα link, και δίνεις για παράδειγμα το link "localhost/index.php?category=3&id=500&level=1 ". O dimsis σου έγραψε ένα παράδειγμα του πώς να τα πάρεις αυτά χωρίς PHP μόνο με JavaScript.

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

g_p
Δημοσιεύσεις: 134
Εγγραφή: 28 Μάιος 2010 12:43

Πώς μπορώ να πάρω με mouseover τα fields ενός link στην php π.χ. index.php?category=3&id=5

Δημοσίευση από g_p » 13 Μάιος 2011 14:42

Γεια σε ολους
κι ευχαριστώ για τις απαντήσεις σας

Στο test_template.inc βρίσκεται μόνο κώδικας html (όχι php) και έχω

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

 <li class="edu"><a href="#Constant1#"  onmouseover="getparams&#40;this.href&#41;">#title1#</a></li>
 <li class="edu"><a href="#Constant2#"  onmouseover="getparams&#40;this.href&#41;">#title2#</a></li>
 <li class="edu"><a href="#Constant3#"  onmouseover="getparams&#40;this.href&#41;">#title3#</a></li>
 <li class="edu"><a href="#Constant4#"  onmouseover="getparams&#40;this.href&#41;">#title4#</a></li>

Comments
:τα links (#Constant1#,#Constant2#,etc) είναι δηλωμένα σε php αρχεία και τα βάζω με eregi_replace από php.
Ομοιως και τα #title1#

Οπότε μέσα στο αρχείο test_template.inc έχω και την javascript function getparams.

Με alert "σπάει" το link και το βλέπω με το pop_message.

Πώς αυτές τις παραμέτρους θα τις περάσω στον κώδικα php??


To πλάνο του προγράμματος είναι κάπως έτσι

index.php (καλεί συναρτησεις php και παίρνει αποτελέσματα)
Ανάλογα με τιην κατηγορία σελίδας στην οποία βρίσκομαι φορτώνω και το σωστό template.
Τώρα μέσα από το template file(test_template.inc) βλέπω με mouseover τις παραμέτρους
αλλά δυσκολεύομαι να καταλάβω πως θα τις περάσω στο αρχείο index.php ωστε
να μου καλέσει τις συναρτήσεις με αυτές τις παραμέτρους που έχω πάρει απο το
mouseover.

Μπορείτε να μου πείτε τι πρέπει να κάνω ώστε χωρίς να φορτώσει ξανά
το αρχείο index.php να καλέσω τις συναρτήσεις που είναι μέσα στο αρχείο??

ευχαριστώ

Άβαταρ μέλους
jpk
Δημοσιεύσεις: 441
Εγγραφή: 09 Μαρ 2011 21:17

Πώς μπορώ να πάρω με mouseover τα fields ενός link στην php π.χ. index.php?category=3&id=5

Δημοσίευση από jpk » 14 Μάιος 2011 02:41

Τελικά δεν ήθελες μόνο αυτά που έλεγες στο πρώτο σου μήνυμα ....

www.w3schools.com/PHP/php_ajax_database.asp

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

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

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