δεν εμφανιζει εγγραφες στο λιστακι που αντλει δυναμικα απο βδ

Συζητήσεις για την βάση δεδομένων MySQL και το phpMyAdmin

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

Απάντηση
stavroula_apo
Δημοσιεύσεις: 121
Εγγραφή: 18 Σεπ 2010 03:12

δεν εμφανιζει εγγραφες στο λιστακι που αντλει δυναμικα απο βδ

Δημοσίευση από stavroula_apo » 14 Μάιος 2011 16:27

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

<?php require&#40;"db.php"&#41;;
if&#40;$_SESSION&#91;'access'&#93;!=2&#41;&#123;
	header&#40;'location&#58;index.php'&#41;;
	exit;
&#125;
function isValidDateTime&#40;$dateTime&#41;
&#123;
    $dateTime.=" 00&#58;00&#58;00";

    if &#40;preg_match&#40;"/^&#40;\d&#123;4&#125;&#41;-&#40;\d&#123;2&#125;&#41;-&#40;\d&#123;2&#125;&#41; &#40;&#91;01&#93;&#91;0-9&#93;|2&#91;0-3&#93;&#41;&#58;&#40;&#91;0-5&#93;&#91;0-9&#93;&#41;&#58;&#40;&#91;0-5&#93;&#91;0-9&#93;&#41;$/", $dateTime, $matches&#41;&#41; &#123;

        if &#40;checkdate&#40;$matches&#91;2&#93;, $matches&#91;3&#93;, $matches&#91;1&#93;&#41;&#41; &#123;
            return true;
        &#125;
    &#125;

    return false;
&#125;
echo '<?xml version="1.0" enconding="UTF-8" ?>';
?>
<!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>AddCourse</title>
<script type="text/javascript" src="ajaxLib.js"></script>
<link rel="stylesheet" href="menu/menu_style.css" type="text/css" />
<script language="javascript" type="text/javascript" src="script.js"></script>
</head>

<body>
<div id="container">
<?php require&#40;"menu.php"&#41;; ?>
<?php
if&#40;!$_POST&#91;"submit"&#93;&#41;&#123;
?>

    <h3>Καταχώρηση Βαθμολογίας Εργασίας</h3>
    <form id="add_gradework" name="add_gradework" action="" method="post" onsubmit="return validateadd_gradework&#40;&#41;;" onreset="return confirm&#40;'Είστε σίγουρος ότι θέλετε να καθαρίσετε όλη τη φόρμα;'&#41;">
    <fieldset>
    <legend>Στοιχεία Εργασίας</legend>
    <div id="float">

	<label for="course">Μάθημα</label>

	<select onChange="studentSelection&#40;'course'&#41;;" class="textfield" name="course" id="course" tabindex="1">
            <option value=""></option>
        <?php
            $sql="select assid,cinid,asstitle,assignedon,duedate from assignement where cinid in &#40;select cinid from  teachingassignement where staffid in &#40;select staffid from staff where usid='".$_SESSION&#91;'usid'&#93;."'&#41;&#41; order by assignedon desc";
            $result = mysql_query&#40;$sql&#41;;
            while &#40;$row=mysql_fetch_assoc&#40;$result&#41;&#41;&#123;
                echo "<option value='".$row&#91;'assid'&#93;."'>".$row&#91;'asstitle'&#93;." &#40;".$row&#91;'assignedon'&#93;."&#41;</option>";
            &#125;
        ?>
        </select>
        <br></br>
        <label for="student">Φοιτητής</label>
        <div id="student_div">

        </div>
        <br></br>
        <label for="grade">Βαθμός</label>
	<input type="text" class="textfield" name="grade" id="grade" size="10" tabindex="6"/><br/><br/>
        <label for="password">Ημερομηνία Παράδοσης</label>
	<input type="text" class="textfield" name="hodate" id="hodate" size="30" tabindex="6"/><br/><br/>


</div>
</fieldset>

  <input type="submit" name="submit" class="cbutton" value="Καταχώρηση" tabindex="4"/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	<input type="reset" class="cbutton" value="Καθαρισμός" tabindex="5"/>
</form>
</div>
<br/>

<?php
&#125;
else &#123;
    $course=mysql_real_escape_string&#40;$_POST&#91;'course'&#93;&#41;;
    $student=mysql_real_escape_string&#40;$_POST&#91;'student'&#93;&#41;;
    $grade=mysql_real_escape_string&#40;$_POST&#91;'grade'&#93;&#41;;
    if &#40;&#40;$grade>10&#41;||&#40;$grade<0&#41;&#41;&#123;
        ?>
       <script type="text/javascript">alert&#40;"Η βαθμολογία πρέπει να ανήκει στην 10βάθμια κλίμακα!"&#41;;history.go&#40;-1&#41;;</script>
       <?php
       die&#40;&#41;;
    &#125;
    $hodate=mysql_real_escape_string&#40;$_POST&#91;'hodate'&#93;&#41;;
    if &#40;!isValidDateTime&#40;$hodate&#41;&#41;&#123;
       ?>
       <script type="text/javascript">alert&#40;"Η ημερομηνια πρέπει να είναι της μορφής ΥΥΥΥ/ΜΜ/DD"&#41;;history.go&#40;-1&#41;;</script>
       <?php
       die&#40;&#41;;
    &#125;
    if&#40;$course !="" && $student !="" && $grade !=""&#41;&#123;
        $query="select `assid`, `studid`, `assgrade` from `assignementgrade` where `assid` = '$course' and `studid`='$student';";
        $result=mysql_query&#40;$query, $con&#41; or die&#40;mysql_error&#40;$con&#41;&#41;;
        if &#40;mysql_num_rows&#40;$result&#41;!=0&#41;&#123;
            $row=mysql_fetch_assoc&#40;$result&#41;;
            echo "Έχει ήδη καταχωρηθεί βαθμός &#40;".$row&#91;'assgrade'&#93;."&#41;";
        &#125;
        else &#123;


            $query="INSERT INTO `school`.`assignementgrade` &#40;`assid`, `studid`, `deliveredon`, `assgrade`&#41;  ";
            $query.="VALUES &#40;'$course', '$student', '$hodate','$grade'&#41;";
            mysql_query&#40;$query, $con&#41; or die&#40;mysql_error&#40;$con&#41;&#41;;
            $lastid = mysql_insert_id&#40;&#41;;
            echo "Η εγγραφή καταχωρήθηκε επιτυχώς! <br/><br/>";
            //$query="SELECT stafffirst,stafflast,coursetitle,coursecode FROM studentregistration a,courseinstance b,course c,staff d WHERE a.cinid=b.cinid and b.courseid=c.courseid and b.semester=d.staffid and a.studid=".$studentid." and a.cinid=".$course;

            $result=mysql_query&#40;$query, $con&#41;;

            $row=mysql_fetch_array&#40;$result&#41;;
            ?>

            <input type="button" value="<Επιστροφή" class="button" onclick="add_gradeework.php"/>
            <?php
        &#125;
    &#125;
    else&#123;
        echo "Δεν συμπληρώσατε όλα τα στοιχεία της φόρμας";
    &#125;
&#125;
mysql_close&#40;$con&#41;;
?>
<br />
<br />

</body>
</html>


αυτος ειναι ο κωδικας που εχω φτιαξει για καταχωρηση δεδομενων απο μια φορμα.
στο πεδιο μαθημα εμφανιζεται δυναμικα ο τιτλος της εξετασης που εχει αναλαβει ενας καθηγητης κ στο πεδιο μαθητης θα επρεπε να εμφανιζεται οι φοιτητες που εχουν επιλεξει το μαθημα.πραγμα που δεν γινεται κ δεν ξερω τι φταει...αν μπορει ας με βοηθησει καποιος...

Άβαταρ μέλους
jjim50
Δημοσιεύσεις: 48
Εγγραφή: 02 Φεβ 2009 15:37
Τοποθεσία: Ηράκλειο
Επικοινωνία:

δεν εμφανιζει εγγραφες στο λιστακι που αντλει δυναμικα απο βδ

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

Φαντάζομαι ότι το αρχείο db.php κάνει τις συνδέσεις με την βάση κτλ.
Ο κώδικας με μια ματιά σωστός μου φαίνεται, έχεις ελέγξει ότι το query όντως σου επιστρέφει αποτελέσματα; Μήπως σου επιστρέφει κενό result set;
www.cobaltblue.gr - Φιλικό hosting, πρωτότυπη εξυπηρέτηση.

stavroula_apo
Δημοσιεύσεις: 121
Εγγραφή: 18 Σεπ 2010 03:12

δεν εμφανιζει εγγραφες στο λιστακι που αντλει δυναμικα απο βδ

Δημοσίευση από stavroula_apo » 15 Μάιος 2011 14:04

jjim50 έγραψε:Φαντάζομαι ότι το αρχείο db.php κάνει τις συνδέσεις με την βάση κτλ.
Ο κώδικας με μια ματιά σωστός μου φαίνεται, έχεις ελέγξει ότι το query όντως σου επιστρέφει αποτελέσματα; Μήπως σου επιστρέφει κενό result set;
to db.php κανει τη συνδεση με τη βαση. το αρχειο studentSelection ειναι αυτο:

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

<?php
require&#40;"db.php"&#41;;
$sql="SELECT * FROM `student` WHERE studid in &#40;select studid from studentregistration where cinid in &#40;select cinid from exam where examid=".$_GET&#91;'exam'&#93;."&#41;&#41;";
$result=mysql_query&#40;$sql&#41;;
echo "<select class='textfield' name='student' id='student' tabindex='2'>";
while &#40;$row=mysql_fetch_assoc&#40;$result&#41;&#41;&#123;
    echo "<option value='".$row&#91;'studid'&#93;."'>".$row&#91;'studfirst'&#93;." ".$row&#91;'studlast'&#93;."&#40;".$row&#91;'studid'&#93;."&#41;</option>";
&#125;
echo "</select>";

?>
να τρεξω το ερωτημα αυτο εννοεις στο phpmyadmin?

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

SELECT * FROM `student` WHERE studid in &#40;select studid from studentregistration where cinid in &#40;select cinid from exam where examid=".$_GET&#91;'exam'&#93;."&#41;&#41;;
τεχοντας αυτο μ λεει:
Η MySQL επέστρεψε ένα άδειο σύνολο αποτελεσμάτων (π.χ. καμμία εγγραφή).

Άβαταρ μέλους
jjim50
Δημοσιεύσεις: 48
Εγγραφή: 02 Φεβ 2009 15:37
Τοποθεσία: Ηράκλειο
Επικοινωνία:

δεν εμφανιζει εγγραφες στο λιστακι που αντλει δυναμικα απο βδ

Δημοσίευση από jjim50 » 15 Μάιος 2011 14:07

Οπότε όντως σου επιστρέφει κενό result set, το query σου μάλλον είναι λάθος γιαυτό και δεν εκτυπώνει τίποτα.
Δε ξέρω ακριβώς την δομή της βάσης σου άρα πρέπει να πειραματιστείς λίγο για να βρεις το query που όντως θα τραβάει τα στοιχεία που χρειάζεσαι.
www.cobaltblue.gr - Φιλικό hosting, πρωτότυπη εξυπηρέτηση.

Άβαταρ μέλους
jjim50
Δημοσιεύσεις: 48
Εγγραφή: 02 Φεβ 2009 15:37
Τοποθεσία: Ηράκλειο
Επικοινωνία:

δεν εμφανιζει εγγραφες στο λιστακι που αντλει δυναμικα απο βδ

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

Α, ξέχασα να προσθέσω, όταν τρέχεις το query από phhMyAdmin, φαντάζομαι ότι αντικαθιστάς το ".$_GET['exam']." με μια πραγματική τιμή σωστά;
www.cobaltblue.gr - Φιλικό hosting, πρωτότυπη εξυπηρέτηση.

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

δεν εμφανιζει εγγραφες στο λιστακι που αντλει δυναμικα απο βδ

Δημοσίευση από dva_dev » 15 Μάιος 2011 14:20

stavroula_apo έγραψε:να τρεξω το ερωτημα αυτο εννοεις στο phpmyadmin?

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

SELECT * FROM `student` WHERE studid in &#40;select studid from studentregistration where cinid in &#40;select cinid from exam where examid=".$_GET&#91;'exam'&#93;."&#41;&#41;;
τεχοντας αυτο μ λεει:
Η MySQL επέστρεψε ένα άδειο σύνολο αποτελεσμάτων (π.χ. καμμία εγγραφή).
Αν θέλεις γράψε ακριβώς τι γράφεις στο phpmyadmin και σου επιστρέφει κενό result set.

stavroula_apo
Δημοσιεύσεις: 121
Εγγραφή: 18 Σεπ 2010 03:12

δεν εμφανιζει εγγραφες στο λιστακι που αντλει δυναμικα απο βδ

Δημοσίευση από stavroula_apo » 15 Μάιος 2011 14:32

dva_dev έγραψε:
stavroula_apo έγραψε:να τρεξω το ερωτημα αυτο εννοεις στο phpmyadmin?

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

SELECT * FROM `student` WHERE studid in &#40;select studid from studentregistration where cinid in &#40;select cinid from exam where examid=".$_GET&#91;'exam'&#93;."&#41;&#41;;
τεχοντας αυτο μ λεει:
Η MySQL επέστρεψε ένα άδειο σύνολο αποτελεσμάτων (π.χ. καμμία εγγραφή).
Αν θέλεις γράψε ακριβώς τι γράφεις στο phpmyadmin και σου επιστρέφει κενό result set.
οχι ενταξει δε μ επιστρεφει αδειο συνολο μ επιστρεφει κανονονικα την αντιστοιχη εγγραφη. η εντολη π χρησιμοποιω ειναι

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

SELECT * FROM `student` WHERE studid in &#40;select studid from studentregistration where cinid in &#40;select cinid from exam where examid=15&#41;&#41;;
δε ξερω τι μπορει να ειναι γαμωτο απο τη στιγμη που φερνει κανονικα αποτελεσματα οταν το τρεχω στο phpmyadmin.

Άβαταρ μέλους
jjim50
Δημοσιεύσεις: 48
Εγγραφή: 02 Φεβ 2009 15:37
Τοποθεσία: Ηράκλειο
Επικοινωνία:

δεν εμφανιζει εγγραφες στο λιστακι που αντλει δυναμικα απο βδ

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

Καλού κακού, βάλε έναν έλεγχο μετά το $result = mysql_query($sql); να δεις αν σου επιστρέφει αποτελέσματα, όπως έχεις κάνει και παρακάτω στον κώδικά σου (if (mysql_num_rows($result) ==0).
www.cobaltblue.gr - Φιλικό hosting, πρωτότυπη εξυπηρέτηση.

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

δεν εμφανιζει εγγραφες στο λιστακι που αντλει δυναμικα απο βδ

Δημοσίευση από dva_dev » 15 Μάιος 2011 16:01

stavroula_apo έγραψε:to db.php κανει τη συνδεση με τη βαση. το αρχειο studentSelection ειναι αυτο:

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

<?php
require&#40;"db.php"&#41;;
$sql="SELECT * FROM `student` WHERE studid in &#40;select studid from studentregistration where cinid in &#40;select cinid from exam where examid=".$_GET&#91;'exam'&#93;."&#41;&#41;";
$result=mysql_query&#40;$sql&#41;;
echo "<select class='textfield' name='student' id='student' tabindex='2'>";
while &#40;$row=mysql_fetch_assoc&#40;$result&#41;&#41;&#123;
    echo "<option value='".$row&#91;'studid'&#93;."'>".$row&#91;'studfirst'&#93;." ".$row&#91;'studlast'&#93;."&#40;".$row&#91;'studid'&#93;."&#41;</option>";
&#125;
echo "</select>";

?>
To αρχείο studentselection που γίνεται include? Εγώ βλέπω μόνο ένα

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

onChange="studentSelection&#40;'course'&#41;;
το οποίο λογικά είναι κάποια javascript function. Αυτή τι κάνει;

stavroula_apo
Δημοσιεύσεις: 121
Εγγραφή: 18 Σεπ 2010 03:12

δεν εμφανιζει εγγραφες στο λιστακι που αντλει δυναμικα απο βδ

Δημοσίευση από stavroula_apo » 15 Μάιος 2011 21:52

dva_dev έγραψε:
stavroula_apo έγραψε:to db.php κανει τη συνδεση με τη βαση. το αρχειο studentSelection ειναι αυτο:

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

<?php
require&#40;"db.php"&#41;;
$sql="SELECT * FROM `student` WHERE studid in &#40;select studid from studentregistration where cinid in &#40;select cinid from exam where examid=".$_GET&#91;'exam'&#93;."&#41;&#41;";
$result=mysql_query&#40;$sql&#41;;
echo "<select class='textfield' name='student' id='student' tabindex='2'>";
while &#40;$row=mysql_fetch_assoc&#40;$result&#41;&#41;&#123;
    echo "<option value='".$row&#91;'studid'&#93;."'>".$row&#91;'studfirst'&#93;." ".$row&#91;'studlast'&#93;."&#40;".$row&#91;'studid'&#93;."&#41;</option>";
&#125;
echo "</select>";

?>
To αρχείο studentselection που γίνεται include? Εγώ βλέπω μόνο ένα

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

onChange="studentSelection&#40;'course'&#41;;
το οποίο λογικά είναι κάποια javascript function. Αυτή τι κάνει;
ναι υπαρχει. ενταξει το εφτιαξα.εκει ηταν το προβλημα απλα δεν το ειχα προσεξει.αλλα εχω ενα ακομα θεματακι...ξερεις απο βδ?

Απάντηση

Επιστροφή στο “MySQL”

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

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