PHP-MySQL Μια μικρή βοήθεια

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

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

Απάντηση
Άβαταρ μέλους
Banavas
Script Master
Δημοσιεύσεις: 1367
Εγγραφή: 21 Νοέμ 2004 20:25
Επικοινωνία:

PHP-MySQL Μια μικρή βοήθεια

Δημοσίευση από Banavas » 16 Ιουν 2010 15:26

Μην τα περιμένεις όλα έτοιμα... Ψάξε και εσύ λιγάκι.
Βάλε στο insert.php μερικά echo για να δεις τι γίνεται.
βάλε στην αρχή επάνω echo $_post['test1'] . " - ".$_post['test2'] . " - ".$_post['test3'] ;
για να δεις αν έρχονται οι μεταβλητές σωστά.
Βάλε μετά την άθροιση echo $total; για να δεις αν γίνεται η άθροιση σωστά.

Ετσι θα καταλάβεις που βρίσκεται το πρόβλημα.
Happy coding....
Μάρκος
http://lasernet.gr

free-stuff
Δημοσιεύσεις: 87
Εγγραφή: 28 Νοέμ 2008 13:07

PHP-MySQL Μια μικρή βοήθεια

Δημοσίευση από free-stuff » 16 Ιουν 2010 16:40

Δεν τα περιμένω όλα έτοιμα, εδώ και 2 μέρες πειραματίζομαι χωρίς αποτέλεσμα αν και αυτό που λες με τα echo δεν το έκανα.

Θα το κάνω και θα επανέλθω.

free-stuff
Δημοσιεύσεις: 87
Εγγραφή: 28 Νοέμ 2008 13:07

PHP-MySQL Μια μικρή βοήθεια

Δημοσίευση από free-stuff » 16 Ιουν 2010 17:57

Ok βρήκα τη λύση...

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

$test1 = (int) $_POST["test1"]; 
$test2 = (int) $_POST["test2"];
$test3 = (int) $_POST["test3"];
$test4 = (int) $_POST["test4"];
$test5 = (int) $_POST["test5"];
$test6 = (int) $_POST["test6"];
$test7 = (int) $_POST["test7"];
$test8 = (int) $_POST["test8"];
$test9 = (int) $_POST["test9"];
$test10 = (int) $_POST["test10"];

$total= $test1+$test2+$test3+$test4+$test5+$test6+$test7+$test8+$test9+$test10;

free-stuff
Δημοσιεύσεις: 87
Εγγραφή: 28 Νοέμ 2008 13:07

PHP-MySQL Μια μικρή βοήθεια

Δημοσίευση από free-stuff » 16 Ιουν 2010 18:18

Τώρα προσπαθώ να βρω λύση στο εξής θέμα...

Βάζω το όνομα "Γιάννης" και κάνω το τεστ. Παίρνω 1 βαθμό και καταχωρείται στη βάση το όνομά μαζί με τη βαθμολογία.

Μετά όταν ξανακάνω το τεστ με το ίδιο όνομα, μου βγάζει
Error: Duplicate entry 'Γιάννης' for key 'PRIMARY'

Σκέφτηκα να βάλω ένα if που να ελέγχει αν το όνομα του χρήστη υπάρχει ήδη στη βάση και η βαθμολογία είναι μεγαλύτερη από την προηγούμενη, να κάνει UPDATE αντί INSERT.

Γίνεται αυτό που σκέφτηκα;

Άβαταρ μέλους
Banavas
Script Master
Δημοσιεύσεις: 1367
Εγγραφή: 21 Νοέμ 2004 20:25
Επικοινωνία:

PHP-MySQL Μια μικρή βοήθεια

Δημοσίευση από Banavas » 16 Ιουν 2010 19:32

Γίνεται.

Επειδή όμως κρατάς τα στοιχεία αυτά προφανώς κάποια στιγμή τα δείχνεις. Επομένως θα ήταν καλύτερα να αφαιρέσεις από το name το unice ώστε να δέχεται διπλές εγγραφές.
Έτσι θα μπορείς να μετρήσεις πόσες φορές συμπλήρωσε ο χρήστης το τεστ ποια ήταν η μεγαλύτερη / χαμηλότερη βαθμολογία ποιος ο μέσος όρος των αποτελεσμάτων και ότι άλλο σκεφτείς εσύ.
Happy coding....
Μάρκος
http://lasernet.gr

Άβαταρ μέλους
dva_dev
Script Master
Δημοσιεύσεις: 3790
Εγγραφή: 16 Σεπ 2005 01:32
Επικοινωνία:

PHP-MySQL Μια μικρή βοήθεια

Δημοσίευση από dva_dev » 16 Ιουν 2010 19:58

free-stuff έγραψε:Γίνεται αυτό που σκέφτηκα;
Το ερώτημα είναι αν γίνεται ή πως μπορείς να το κάνεις;

Κι εγώ βλέπω πως θα σου είναι χρήσιμη η αλλαγή που προτείνει ο Banavas.

Άβαταρ μέλους
dimitrisdamo
Δημοσιεύσεις: 78
Εγγραφή: 19 Νοέμ 2009 20:00
Επικοινωνία:

PHP-MySQL Μια μικρή βοήθεια

Δημοσίευση από dimitrisdamo » 16 Ιουν 2010 22:43

στο $total καντο '$total'

EDIT:Επισης αν καποιος κανει προβολη κωδικα ουστιαστικα εχει τις απαντησεις :hammer: :hammer:

free-stuff
Δημοσιεύσεις: 87
Εγγραφή: 28 Νοέμ 2008 13:07

PHP-MySQL Μια μικρή βοήθεια

Δημοσίευση από free-stuff » 17 Ιουν 2010 00:47

dimitrisdamo έγραψε:στο $total καντο '$total'

EDIT:Επισης αν καποιος κανει προβολη κωδικα ουστιαστικα εχει τις απαντησεις :hammer: :hammer:
χμμ δουλεύει κι έτσι πάντως.

Ναι έχεις δίκαιο σε αυτό με την προβολή του κώδικα αλλά οκ δεν είναι πρόβλημα 8)

free-stuff
Δημοσιεύσεις: 87
Εγγραφή: 28 Νοέμ 2008 13:07

PHP-MySQL Μια μικρή βοήθεια

Δημοσίευση από free-stuff » 17 Ιουν 2010 00:48

banava και dva_dev είναι σωστή η σκέψη σας και την εφάρμοσα. Θα επανέλθω αύριο-μεθάυριο με τυχόν απορίες.

free-stuff
Δημοσιεύσεις: 87
Εγγραφή: 28 Νοέμ 2008 13:07

PHP-MySQL Μια μικρή βοήθεια

Δημοσίευση από free-stuff » 21 Ιουν 2010 18:47

Επανέρχομαι με ένα μικρό πρόβλημα...

Στη σελίδα με τα στατιστικά των χρηστών θέλω να παρουσιάζω δύο πίνακες. Στον πρώτο θα φαίνονται όλες οι προσπάθειες και στο δεύτερο μόνο οι μέσοι όροι ανά χρήστη.

Το πρόβλημα είναι ότι εμφανίζεται έτσι....

Εικόνα


Ο δεύτερος τίτλος δεν είναι πάνω από το δεύτερο πίνακα.

Ορίστε ο κώδικας...

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

 <?php
$db_host = 'localhost';
$db_user = 'root';
$db_pwd = '';

$database = 'ekpaideutiko';
$table = 'stats';

if &#40;!mysql_connect&#40;$db_host, $db_user, $db_pwd&#41;&#41;
    die&#40;"Can't connect to database"&#41;;

if &#40;!mysql_select_db&#40;$database&#41;&#41;
    die&#40;"Can't select database"&#41;;

// sending query
mysql_query&#40;"SET NAMES 'utf8';"&#41;;
$result = mysql_query&#40;"SELECT * FROM &#123;$table&#125;"&#41;;
if &#40;!$result&#41; &#123;
    die&#40;"Query to show fields from table failed"&#41;;
&#125;

$fields_num = mysql_num_fields&#40;$result&#41;;

echo "<h1>Πίνακας συγκεντρωτικών αποτελεσμάτων</h1>";
echo "<table border='1'><tr>";
// printing table headers
for&#40;$i=0; $i<$fields_num; $i++&#41;
&#123;
    $field = mysql_fetch_field&#40;$result&#41;;
    echo "<td>&#123;$field->name&#125;</td>";
&#125;
echo "</tr>\n";
// printing table rows
while&#40;$row = mysql_fetch_row&#40;$result&#41;&#41;
&#123;
    echo "<tr>";

    // $row is array... foreach&#40; .. &#41; puts every element
    // of $row to $cell variable
    foreach&#40;$row as $cell&#41;
        echo "<td>$cell</td>";

    echo "</tr>\n";
&#125;

//DEUTERO QUERY
$result = mysql_query&#40;"SELECT Name, AVG &#40;Grade&#41; FROM &#123;$table&#125; GROUP BY Name"&#41;;
if &#40;!$result&#41; &#123;
    die&#40;"Query to show fields from table failed"&#41;;
&#125;

$fields_num = mysql_num_fields&#40;$result&#41;;

echo "<h1>Πίνακας μέσου όρου χρηστών</h1>";
echo "<table border='1'><tr>";
// printing table headers
for&#40;$i=0; $i<$fields_num; $i++&#41;
&#123;
    $field = mysql_fetch_field&#40;$result&#41;;
    echo "<td>&#123;$field->name&#125;</td>";
&#125;
echo "</tr>\n";
// printing table rows
while&#40;$row = mysql_fetch_row&#40;$result&#41;&#41;
&#123;
    echo "<tr>";

    // $row is array... foreach&#40; .. &#41; puts every element
    // of $row to $cell variable
    foreach&#40;$row as $cell&#41;
        echo "<td>$cell</td>";

    echo "</tr>\n";
&#125;

//mysql_free_result&#40;$result&#41;;
?>

Άβαταρ μέλους
burnmind
Script Master
Δημοσιεύσεις: 954
Εγγραφή: 26 Σεπ 2009 02:14
Τοποθεσία: UK
Επικοινωνία:

PHP-MySQL Μια μικρή βοήθεια

Δημοσίευση από burnmind » 21 Ιουν 2010 22:34

Δεν κλείνεις τα table tags (</table>).

free-stuff
Δημοσιεύσεις: 87
Εγγραφή: 28 Νοέμ 2008 13:07

PHP-MySQL Μια μικρή βοήθεια

Δημοσίευση από free-stuff » 21 Ιουν 2010 22:51

burNMind έγραψε:Δεν κλείνεις τα table tags (</table>).
Σ' ευχαριστώ.

Απάντηση

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

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

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