Προς το περιεχόμενο

PHP 5.5.29 MySQL Error


Προτεινόμενες αναρτήσεις

Δημοσ.

Έχω το παρακάτω πρόγραμμα για να τραβέω δεδομένα απο MySQL.
Σε PHP Version 5.6 σε Apache δουλεύει κανονικά , όταν όμως το ανεβάζω σε NGNIX ΡΗΡ 5.5.29 δεν δουλεύει τίποτα. Βγάζει πρόβλημα στην άντληση των δεδομένων.

 

Παιδεύομαι αρκετό καιρό με αυτο το θέμα , υπάρχει κανείς που να γνωρίζει ?

 

Ο κώδικας είναι ο παρακάτω:

<?php 

  /* Main Query */
  require("connection.php");
  mysql_query("SET NAMES 'utf8'");
  $result=mysql_query("SELECT orders.id,orders.catnum,songs.artist,songs.title,orders.client  FROM ORDERS INNER JOIN SONGS  ON orders.catnum = songs.catnum ORDER BY time DESC",$con);
  $num = mysql_num_rows($result);
  
  /* END Connection Settings and Query */


 <?php
			
    /* Load SQL Data to HTML Table */			
			
while($data = mysql_fetch_row($result)){
				   
	echo "<tr>";
	echo "<td>$data[1]</td>";
    echo "<td>$data[4]</td>";
    echo "<td>$data[2] - $data[3]</td>";					
    echo "<td><a href='handlers/remorder.php?delete=$data[0]'></a></td>";									   
	echo "</tr>";
echo "</table>"; 
				
?>
Δημοσ.

Groot το ζητούμενο αυτή την στιγμή δεν είναι το level μου στον προγραμματισμό και να είσαι σίγουρος πως για να postαρω εδώ σημαίνει πβς δεν έχω βρει άκρη. Γι αυτό σε παρακαλώ αν μπορείς να βοηθήσεις έχει Καλώς διαφορετικά σε ευχαριστώ

Lion2486 κλείνει κανονικά ο βρόχος του while και επίσης υπάρχει το mysql connection link.

Δημοσ. (επεξεργασμένο)

Για αρχη θα σου προτεινα να χρησιμοποιησεις mysqli και να μας πεις αποτελεσματα

Επεξ/σία από dios231
Δημοσ.

Καταρχήν όλα τα παραπάνω είναι deprecated από την 5.5.0 σαφώς και θα ήταν καλύτερα να χρησιμοποιήσεις MySQLi ή PDO_MySQL.

 

http://php.net/manual/en/function.mysql-query.php

 

mysql_query() will also fail and return FALSE if the user does not have permission to access the table(s) referenced by the query.

 

 

Οπότε δεν κοιτάς μια αν ο χρήστης που χρησιμοποιείς στο connection για την MySQL μπορεί όντως να προσπελάσει τα tables που θέλεις.

 

Αν βάλεις το παρακάτω μετά την mysql_query και πριν την  mysql_num_rows

if (!$result) {
    die('Invalid query: ' . mysql_error());
}

σου λέει τίποτα για το error?

Δημοσ.

Αφού στο λέει το error! Τι ψάχνεις;

 

 

Για να μάθεις και κάτι, δες πότε γυρνάει boolean η mysql_query.

 

Καταρχήν όλα τα παραπάνω είναι deprecated από την 5.5.0 σαφώς και θα ήταν καλύτερα να χρησιμοποιήσεις MySQLi ή PDO_MySQL.

 

http://php.net/manual/en/function.mysql-query.php

 

 

mysql_query() will also fail and return FALSE if the user does not have permission to access the table(s) referenced by the query.

 

 

Οπότε δεν κοιτάς μια αν ο χρήστης που χρησιμοποιείς στο connection για την MySQL μπορεί όντως να προσπελάσει τα tables που θέλεις.

 

Αν βάλεις το παρακάτω μετά την mysql_query και πριν την  mysql_num_rows

if (!$result) {
    die('Invalid query: ' . mysql_error());
}

σου λέει τίποτα για το error?

 

 

Αδερφέ TS, αντί να εστιάσεις στο να αποδείξεις τι ξέρεις και τι όχι, θα μπορούσες να εστιάσεις σε αυτό που σου είπα (και λέει επίσης και ο nucleus) και μέχρι τώρα θα το είχες λύσει. :) 

Δημοσ.

Αφού όμως λέει ότι σε apache δουλεύει κανονικά. Γιατί να μην τρέχει σε nginx??

Αφού όμως λέει ότι σε apache δουλεύει κανονικά. Γιατί να μην τρέχει σε nginx??

Δημοσ.

Μισό να μυρίσω τα νύχια μου και να σου πω....

 

 

Ή, καλύτερα, θα προτείνω να δοκιμάσει την mysql_error που είπε και ο nucleus. 

Δημοσ. (επεξεργασμένο)

Αυτο που θέλω να πω είναι πως για να τρέχει σε apache λογικά δεν θα έχει θέμα ουτε ο κώδικας αλλά ουτε και η βάση

Επεξ/σία από dios231

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...