Πίνακας απο Mysql δεδομένα

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

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

Απάντηση
Lefteris33
Δημοσιεύσεις: 93
Εγγραφή: 18 Μαρ 2010 15:10
Τοποθεσία: Δαφνη
Επικοινωνία:

Πίνακας απο Mysql δεδομένα

Δημοσίευση από Lefteris33 » 27 Οκτ 2011 14:22

Προσπαθώ μέσα από ένα ερώτημα στην βάση δεδομένων να δημιουργήσω ένα πίνακα ο οποίος θα παραθέτει τα δεδομένα σε 3 κελιά οριζόντια και θα συνεχίζει απο κάτω τα υπόλοιπα πάντα σε 3 κελιά οριζόντια.

Το πρόβλημα είναι ότι φέρνω τον πίνακα φτιάχνοντας 3 ίδια κελιά για κάθε προιόν.

Ο κώδικας που χρησιμοποιώ είναι ο παρακάτω:

$query = ("SELECT id , proion_name, proion_photo, proion_price, proion_cat
FROM proionta");

$result = mysql_query ($query); // Run the query

if (($result)||(mysql_errno == 0))
{
echo "<table width='100%' border='5' cellspacing='5' cellpadding='5' aligne=\"left\">";
if (mysql_num_rows($result)>0)
{
//display the data
while ($rows = mysql_fetch_array($result,MYSQL_ASSOC))
{
echo "<tr>";

$i = 0;
while ($i <3)
{

echo "
<td style=\"padding-top:4px;\" style=\"padding-left:8px;\">
<div style=\"text-align:left\" style=\"float:right\">
<img class=\"imgB\" src={$rows['proion_photo']} width=\"100%\" aligne=\"left\"/>
</div><br/><br/>
<div style=\"background-color: #EEEEEE; padding:2px;\">
<p style=\"background:#EEEEEE\" style=\"color:#FFF\" style=\"font-size:9px;\"><strong>{$rows['proion_name']}</strong></p>
</div><br/>
<strong >Τιμή :{$rows['proion_price']} Ευρώ</strong>
</p><hr /><br/>
<td>
<hr>";
$i++;
}
echo "</tr>";

}
}else{
echo "<tr><td colspan='" . ($i+1) . "'>No Results found!</td></tr>";
}
echo "</table>";
}else{
echo "Error in running query :". mysql_error();
}

Μπορεί να βοηθήσει κάποιος?

Άβαταρ μέλους
Khronos
Δημοσιεύσεις: 754
Εγγραφή: 11 Δεκ 2006 14:43
Τοποθεσία: Ηράκλειο

Πίνακας απο Mysql δεδομένα

Δημοσίευση από Khronos » 27 Οκτ 2011 15:03

Θα σου πρότεινα αντι να χρησιμοποιήσεις table, να χρησιμοποιήσεις div με float:left για κάθε προϊόν.
Έτσι δεν θα ανησυχείς για τα κελιά.

Lefteris33
Δημοσιεύσεις: 93
Εγγραφή: 18 Μαρ 2010 15:10
Τοποθεσία: Δαφνη
Επικοινωνία:

Πίνακας απο Mysql δεδομένα

Δημοσίευση από Lefteris33 » 27 Οκτ 2011 15:07

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

Άβαταρ μέλους
Khronos
Δημοσιεύσεις: 754
Εγγραφή: 11 Δεκ 2006 14:43
Τοποθεσία: Ηράκλειο

Πίνακας απο Mysql δεδομένα

Δημοσίευση από Khronos » 27 Οκτ 2011 15:19

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

<div id="container">
    <ul>
        <li>product 1</li>
        <li>product 2</li>
        <li>product 3</li>
    </ul>
</div>

#container &#123; width&#58; 600px; &#125;
#container ul li &#123; float&#58; left; width&#58; 200px; &#125;
Πρέπει να δώσεις width και στο container σου και στο κάθε στοιχείο της λίστας.

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

Πίνακας απο Mysql δεδομένα

Δημοσίευση από fafos » 27 Οκτ 2011 15:21

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


<?
$n=1;

while&#40;mpla mpla&#41;&#123;

if&#40;&#40;$n % 3&#41;&#41; &#123; $clearFloats = ''; &#125; else &#123; $clearFloats = '<div class="clear"><!--clear floats--></div>'; &#125;

?>

<div class="kapoioStyleMeFloatLeft">...oti thes na emfanizei edo mpla mpla..mpla..</div>

<?
echo $clearFloats;
$n++;
&#125;
?>
'<div class="clear"><!--clear floats--></div>
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

Kypros Lambrou
Δημοσιεύσεις: 96
Εγγραφή: 17 Οκτ 2011 13:29

Πίνακας απο Mysql δεδομένα

Δημοσίευση από Kypros Lambrou » 27 Οκτ 2011 15:54

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

Άλλαξε τον κώδικα μετά το σχόλιο //display the data

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

...
// display the data
     while&#40;$rows = mysql_fetch_array&#40;$result&#41;&#41;
	&#123;
		echo "<tr>";
			echo "<td> &#123;$rows&#91;'proion_name'&#93;&#125; </td>";
			echo "<td> &#123;$rows&#91;'proion_photo'&#93;&#125; </td>";
			echo "<td> &#123;$rows&#91;'proion_price'&#93;&#125; </td>";
	
		echo "</tr>";
	
	&#125;
&#125; else &#123; 
	echo "<tr><td colspan='" . &#40;$i+1&#41; . "'>No Results found!</td></tr>";
μέχρι και το επόμενο else αλλάζοντας φυσικά τα περιεχόμενα του κάθε κελιού στον πίνακα ανάλογα με το τι θέλεις να εμφανίσεις

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

Πίνακας απο Mysql δεδομένα

Δημοσίευση από fafos » 27 Οκτ 2011 15:59

kai an to synolo ton eggrafon den einai polaplasio tou 3?
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

Άβαταρ μέλους
Khronos
Δημοσιεύσεις: 754
Εγγραφή: 11 Δεκ 2006 14:43
Τοποθεσία: Ηράκλειο

Πίνακας απο Mysql δεδομένα

Δημοσίευση από Khronos » 27 Οκτ 2011 16:02

Κάποιος απο μας δεν έχει καταλάβει τι ακριβώς θέλει να κάνει ο Lefteris33.
Τα τρία κελιά αντιστοιχούν σε ένα προϊόν ή ειναι ένα κελί ανα προϊόν?

Lefteris33
Δημοσιεύσεις: 93
Εγγραφή: 18 Μαρ 2010 15:10
Τοποθεσία: Δαφνη
Επικοινωνία:

Πίνακας απο Mysql δεδομένα

Δημοσίευση από Lefteris33 » 27 Οκτ 2011 16:08

fafos δουλεύω το παράδειγμα του Khronos.
Έχω ενα προβληματάκι με το style και το παλεύω.
Δυστυχώς το δικό σου παράδειγμα το δοκίμασα και δεν δουλεύει.
Δεν ξέρω αν διάβασες παραπάνω τον κώδικα που παραθέτω? Για να δώσω και παραπάνω στοιχεία στην ουσία κάνω iclude το αυτό το script(last_proion.php) μέσα σε άλλο script(index.php). Οπότε στο παράδειγμα του Khronos προσαρμόζω τα style στο css της index.php.
Lefteris Toumanidis websitepro

Kypros Lambrou
Δημοσιεύσεις: 96
Εγγραφή: 17 Οκτ 2011 13:29

Πίνακας απο Mysql δεδομένα

Δημοσίευση από Kypros Lambrou » 27 Οκτ 2011 16:10

Η λογική του να παρουσιάζει τα δεδομένα αυτά μου λέει ότι θα θέλει ένα προϊόν σε κάθε σειρά με κάθε κελλί να αντιστοιχεί σε πληροφορίες του συγκεκριμένου προϊόντος.

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

kai an to synolo ton eggrafon den einai polaplasio tou 3?
Γιαυτό αφαίρεσα τα λανθασμένα for statements του φίλου από την δική μου λύση. Με το while ο πίνακας θα προσθέτει αυτόματα σειρές για κάθε προϊόν ενώ αν θέλει παραπάνω στοιχεία με περισσότερα κελιά τότε απλά θα προσθέτει <td>

Lefteris33
Δημοσιεύσεις: 93
Εγγραφή: 18 Μαρ 2010 15:10
Τοποθεσία: Δαφνη
Επικοινωνία:

Πίνακας απο Mysql δεδομένα

Δημοσίευση από Lefteris33 » 27 Οκτ 2011 16:11

Khronos είναι ένα κελί ανα προιόν. Θα κάνω ένα print screen απο κάτι ανάλογο σε αυτό που θέλω να κάνω και θα σας το δώσω.
Lefteris Toumanidis websitepro

Lefteris33
Δημοσιεύσεις: 93
Εγγραφή: 18 Μαρ 2010 15:10
Τοποθεσία: Δαφνη
Επικοινωνία:

Πίνακας απο Mysql δεδομένα

Δημοσίευση από Lefteris33 » 27 Οκτ 2011 16:20

Αυτό το site έχει μια ανάλογη παράθεση των προιόντων με αυτό που θέλω να πετύχω.
Συνημμένα
www.pelmasoft.com screen capture 2011-10-27-15-16-24.JPG

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

Πίνακας απο Mysql δεδομένα

Δημοσίευση από fafos » 27 Οκτ 2011 16:23

Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

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

Πίνακας απο Mysql δεδομένα

Δημοσίευση από korgr » 27 Οκτ 2011 17:27

Η ενδεικνυόμενη λύση είναι κάθε προϊόν σε div με float left και όλα τα product-divs σε container με συνολικό πλάτος που να μην επιτρέπει τέταρτο product-div στη σειρά.
Ούτε clears ούτε τίποτα!

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

Πίνακας απο Mysql δεδομένα

Δημοσίευση από fafos » 27 Οκτ 2011 17:33

korgr έγραψε:Η ενδεικνυόμενη λύση είναι κάθε προϊόν σε div με float left και όλα τα product-divs σε container με συνολικό πλάτος που να μην επιτρέπει τέταρτο product-div στη σειρά.
Ούτε clears ούτε τίποτα!
an den valeis clear (toulaxiston sto telos) kai vrei geitoniko div me float ta ekanes kounoupidi..
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

Απάντηση

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

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

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