Visualizzazione risultati 1 fino 15 di 15

Discussione: Non riesco ad accedere al mio pannello per un erorre sql

  1. #1
    RadioGulliver non è connesso Neofita
    Data registrazione
    05-08-2011
    Messaggi
    8

    Unhappy Non riesco ad accedere al mio pannello per un erorre sql

    Salve a tutti è un po di tempo che nonn riesco più ad accedere come prima al mio pannello della radio implementato sul mio sito altervista vi linko : radiogulliver.altervista.org/radiodjpannel/index.php

    mi da sempre questo errore: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ',email FROM rp_users WHERE username = 'Morpheus'' at line 1


    ho provato dal sito entrando da altervista ma da li sembra tutto ok non capisco!!potete aiutarmi grazie!!

  2. #2
    mzanella non è connesso AlterGuru
    Data registrazione
    29-12-2015
    Messaggi
    1,954

    Predefinito

    Riporta la query (intera) che causa il problema.
    La stessa lanciata tramite PhpMyAdmin funziona?

    I suggerimenti che do più spesso:


  3. #3
    RadioGulliver non è connesso Neofita
    Data registrazione
    05-08-2011
    Messaggi
    8

    Predefinito

    Ciao grazie della risposta allora la query in questione è questa:
    SELECT email FROM rp_users WHERE username = 'Morpheus"
    allora se metto SELECT email FROM rp_users WHERE username = 'Morpheus' funziona mentre la prima da errore e cioè:
    Pare che ci sia un errore nella query SQL immessa. L'errore del server MySQL mostrato qui sotto, se c'è, può anche aiutare nella risoluzione del problema.

    ERROR: Virgolette non chiuse @ 44
    STR: '
    SQL: SELECT email FROM rp_users WHERE username = 'Morpheus"

    Query SQL: Documentazione

    SELECT email FROM rp_users WHERE username = 'Morpheus"

    Messaggio di MySQL: Documentazione

    #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''Morpheus"' at line 1

    Ma io non ho toccato nulla sono mesi che nn funziona prima funzionava benissimo nn so cosa fare devo rifare tutto il pannello radio?

  4. #4
    mzanella non è connesso AlterGuru
    Data registrazione
    29-12-2015
    Messaggi
    1,954

    Predefinito

    Il problema è quello segnalato, hai una stringa aperta in un modo (apice singolo) e chiusa in un altro (apici doppi), il che è un errore.
    Nelle versioni precedenti di SQL probabilmente questo passava inosservato, con il recente aggiornamento viene invece identificato.
    La soluzione più semplice è andare a correggere tutti i punti in cui si verifica lo stesso problema.

    I suggerimenti che do più spesso:


  5. #5
    RadioGulliver non è connesso Neofita
    Data registrazione
    05-08-2011
    Messaggi
    8

    Predefinito

    Grazie della risposta ma come si fa io ho provato ma non riesco puoi dirmi come fare per favore!!grazie.

  6. #6
    mzanella non è connesso AlterGuru
    Data registrazione
    29-12-2015
    Messaggi
    1,954

    Predefinito

    È sufficiente aprire i file PHP che compongono il sito che contengono query, verificare uno per uno se al loro interno ci sono situazioni analoghe e, se ci sono, sostituire l'apice singolo con quelli doppi (o viceversa). Puoi anche farlo direttamente dall'editor di AlterVista.

    I suggerimenti che do più spesso:


  7. #7
    RadioGulliver non è connesso Neofita
    Data registrazione
    05-08-2011
    Messaggi
    8

    Predefinito

    grazie per la risposta ma sono un sacco di file ho trovato il codice php con le query sql qui nell'index.php:
    Codice PHP:
    <?php
    session_start
    ();
    session_cache_expire(1);
    if(
    $_SESSION['rp_logged'] == "TRUE"|$_SESSION['rp_username'] != ""|$_SESSION['rp_passwrd']

    !=
    ""){
    header("Location: home.php");
    }
    ?>

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <?php require('connect.php');?>
    <?php $sitename
    = mysql_query("SELECT sitename FROM rp_data") or die(mysql_error());
    $row = mysql_fetch_assoc($sitename)?>
    <title><?php print $row[sitename]; ?> DJ Panel - Login</title>
    <meta http-equiv="content-type" content="charset=UTF-8">
    <link rel="StyleSheet" href="style.css" type="text/css">
    <script type="text/javascript" src="checkbox.js"></script>
    <?php require('connect.php'); require('functions.php');?>
    </head>
    <body>

    <div id="center">
    <div id="header"> </div>

    <div id="content">
    <div id="menu"><div id="menucontents">
    <div id="center"><?php require('login_menu.php');?>
    </div>
    </div>
    <div id="main">
    <center>

    <?php
    session_start
    ();
    if (
    $_POST['submit']) {
    $username = strip_tags(substr($_POST['username'],0,32));
    $pass = strip_tags(substr($_POST['passwrd'],0,32));
    $passwrd = encrypt($pass);
    $date = $_POST['date'];
    $ipaddr = $_POST['ipaddr'];
    if (
    $passwrd==NULL) {
    echo
    "<center><h1>&Egrave; richiesta una password.</h1></center><p>";
    }else{
    $query = mysql_query("SELECT username,passwrd FROM rp_users WHERE username = '".

    mysql_real_escape_string($username)."'") or die(mysql_error());
    $data = mysql_fetch_array($query);
    if(
    $data['passwrd'] != $passwrd) {
    $logusrf = mysql_query("INSERT INTO rp_usrlogs SET username='$username', date='$date',

    ipaddr='
    $ipaddr', result='Failed'") or die(mysql_error());
    echo
    "<center><h1>I dati sono incoretti.</h1></center><p>";
    }else{
    $query = mysql_query("SELECT username,djname,passwrd,rank,email FROM rp_users WHERE username

    = '"
    . mysql_real_escape_string($username)."'") or die(mysql_error());
    $row = mysql_fetch_array($query);
    $_SESSION["rp_logged"] = TRUE;
    $_SESSION["rp_username"] = $row['username'];
    $_SESSION["rp_passwrd"] = $row['passwrd'];
    $_SESSION["rp_djname"] = $row['djname'];
    $_SESSION["rp_email"] = $row['email'];
    $_SESSION["rp_rank"] = $row['rank'];
    $logusrs = mysql_query("INSERT INTO rp_usrlogs SET username='$username', date='$date',

    ipaddr='
    $ipaddr', result='Successful'") or die(mysql_error());
    $usronline = mysql_query("UPDATE rp_users SET online = 'YES' WHERE username =

    '
    $_SESSION[rp_username]'") or die(mysql_error());
    echo
    "<h1>Redirect in corso...</h1><meta http-equiv='refresh' content='0; url=home.php'>";
    }
    }
    }
    ?>
    <form method="post" action="index.php">
    <center>
    Username:<br>
    <input name="username" type="text" id="username">
    <p>
    Password: <br>
    <input name="passwrd" type="password" id="passwrd">
    <input type="hidden" name="date" value="<?php echo date("d-m-y, G:i"); ?>">
    <input type="hidden" name="ipaddr" value="<?php echo $_SERVER['REMOTE_ADDR'];?>">
    <p>
    <input type="submit" name="submit" value="Login">
    </form>
    </script>
    </center>
    </div>
    </div></div>
    <?php require('bottom.php');?>
    </body>
    </html>
    Secondo te dove sta l'errore?

  8. #8
    mzanella non è connesso AlterGuru
    Data registrazione
    29-12-2015
    Messaggi
    1,954

    Predefinito

    Probabilmente questo file non è l'unico che contiene query. Quella che hai segnalato all'inizio, per esempio, è una SELECT email... che qui non compare. Dovresti cercare altri file che interagiscono col database.

    Le query contenute in questo file, a prima vista, sembrano corrette, a parte il fatto che utilizzano le funzioni mysql_*, le quali sono deprecate da anni e sono state rimosse dalle versioni più recenti di PHP, circa 2-3 anni fa. In termini concreti, questo codice smetterà di funzionare quando la versione di PHP del server verrà aggiornata a 7.0 o successive. Probabilmente non è un problema imminente, ma prima o poi dovrai aggiornare (o far aggiornare) il codice.

    I suggerimenti che do più spesso:


  9. #9
    RadioGulliver non è connesso Neofita
    Data registrazione
    05-08-2011
    Messaggi
    8

    Predefinito

    si ci sono altri file eccone un altro check.php :
    Codice PHP:
    <?php
    session_start
    ();
    require(
    'connect.php');
    if(
    $_SESSION['rp_logged'] == "TRUE") {
    $username = $_SESSION['rp_username'];
    $passwrd = $_SESSION['rp_passwrd'];
    $rank = $_SESSION['rp_rank'];
    $check = mysql_query("SELECT username, passwrd FROM rp_users WHERE username = '$username'")or die(mysql_error());
    if(
    mysql_num_rows($check) == 0) {
    unset(
    $_SESSION['rp_logged']);
    unset(
    $_SESSION['rp_username']);
    unset(
    $_SESSION['rp_passwrd']);
    unset(
    $_SESSION['rp_djname']);
    unset(
    $_SESSION['rp_email']);
    unset(
    $_SESSION['rp_rank']);
    header("Location: index.php");
    exit();
    }else{
    while(
    $info = mysql_fetch_array( $check )) {
    if(
    $info['username'] = ""){
    unset(
    $_SESSION['rp_logged']);
    unset(
    $_SESSION['rp_username']);
    unset(
    $_SESSION['rp_passwrd']);
    unset(
    $_SESSION['rp_djname']);
    unset(
    $_SESSION['rp_email']);
    unset(
    $_SESSION['rp_rank']);
    header("Location: index.php");
    exit();
    }
    if(
    $passwrd != $info['passwrd']) {
    unset(
    $_SESSION['rp_logged']);
    unset(
    $_SESSION['rp_username']);
    unset(
    $_SESSION['rp_passwrd']);
    unset(
    $_SESSION['rp_djname']);
    unset(
    $_SESSION['rp_email']);
    unset(
    $_SESSION['rp_rank']);
    header("Location: index.php");
    exit();
    }
    if(
    $password == "NULL"|$username == "NULL") {
    unset(
    $_SESSION['rp_logged']);
    unset(
    $_SESSION['rp_username']);
    unset(
    $_SESSION['rp_passwrd']);
    unset(
    $_SESSION['rp_djname']);
    unset(
    $_SESSION['rp_email']);
    unset(
    $_SESSION['rp_rank']);
    header("Location: index.php");
    exit();
    }
    if(
    $_SESSION['rp_rank'] == "Suspended") {
    header("Location: contact_public.php");
    }
    $query = mysql_query("SELECT username,djname,passwrd,rank,email FROM rp_users WHERE username = '$username'") or die(mysql_error());
    $row = mysql_fetch_array($query);
    $_SESSION["rp_logged"] = TRUE;
    $_SESSION["rp_username"] = $row['username'];
    $_SESSION["rp_passwrd"] = $row['passwrd'];
    $_SESSION["rp_djname"] = $row['djname'];
    $_SESSION["rp_email"] = $row['email'];
    $_SESSION["rp_rank"] = $row['rank'];
    }
    }
    }
    else {
    header("Location: index.php");
    exit();
    }
    ?>
    e tu sapresti aggiornarmelo per favore?

  10. #10
    RadioGulliver non è connesso Neofita
    Data registrazione
    05-08-2011
    Messaggi
    8

    Predefinito

    ne ho trovato un altro eccolo changepass.php:

    Codice PHP:
    <?php require('head.php');?>
    <?php
    require('connect.php');?>
    <?php $sitename
    = mysql_query("SELECT sitename FROM rp_data") or die(mysql_error());
    $row = mysql_fetch_assoc($sitename)?>
    <title><?php print $row[sitename]; ?> DJ Panel - Cambio password</title>


    <center>
    <b><u>Cambia la tua password</b></u><p>

    <?php
    if($_POST['submit']){
    $query = mysql_query("SELECT passwrd FROM rp_users WHERE username = '$_SESSION[rp_username]'") or die(mysql_error());
    while(
    $row = mysql_fetch_array($query)){
    $passwrd = encrypt($_POST['passwrd']);
    $npasswrd = encrypt($_POST['npasswrd']);
    $cpasswrd = encrypt($_POST['cpasswrd']);
    $oldpasswrd = $row['passwrd'];
    if(
    $passwrd == "NULL"|$npasswrd == "NULL"|$cpasswrd == "NULL"){
    echo
    "<h1>Devi riempire tutti i campi.</h1>";
    }else{
    if(
    $passwrd != $oldpasswrd){
    echo
    "<h1>La tua password attuale &egrave; errata.</h1>";
    }else{
    if(
    $npasswrd == ""|$cpasswrd == ""){
    echo
    "<h1>Hai lasciato qualche campo bianco.</h1>";
    }else{
    if(
    $npasswrd != $cpasswrd){
    echo
    "<h1>Le nuove password non corrispondono.</h1>";
    }else{
    if(
    $npasswrd == $cpasswrd){
    $result = mysql_query("UPDATE rp_users SET passwrd = '$npasswrd' WHERE username = '$_SESSION[rp_username]'");
    $query = mysql_query("SELECT username,djname,passwrd,rank,email FROM rp_users WHERE username = '". mysql_real_escape_string($username)."'") or die(mysql_error());
    $row = mysql_fetch_array($query);
    $_SESSION["rp_logged"] = TRUE;
    $_SESSION["rp_username"] = $row['username'];
    $_SESSION["rp_passwrd"] = $row['passwrd'];
    $_SESSION["rp_djname"] = $row['djname'];
    $_SESSION["rp_email"] = $row['email'];
    $_SESSION["rp_rank"] = $row['rank'];
    echo
    "<center><h1>La tua password &egrave; stata corretamente cambiata.<br></h1></center><p>";
    }
    }
    }
    }
    }
    }
    }
    ?>

    <form method="post" action="changepass.php">
    Password attuale:<br/>
    <input type="password" name="passwrd"><p>
    Nuova Password:<br/>
    <input type="password" name="npasswrd"><p>
    Conferma nuova Password:<br/>
    <input type="password" name="cpasswrd"><p>
    <input type="submit" name="submit" value="Cambia">

    <?php require('bottom.php');?>

  11. #11
    mzanella non è connesso AlterGuru
    Data registrazione
    29-12-2015
    Messaggi
    1,954

    Predefinito

    Anche questi sembrano corretti. Se ci fai caso il frammento SELECT email FROM rp_users WHERE username della query che causava l'errore non compare in quei file, deve trovarsi altrove.

    e tu sapresti aggiornarmelo per favore?
    È un lavoro semplice ma relativamente lungo, al momento non ho molta disponibilità di tempo. Se può interessarti posso metterti in contatto con un mio conoscente che può farlo.

    I suggerimenti che do più spesso:


  12. #12
    RadioGulliver non è connesso Neofita
    Data registrazione
    05-08-2011
    Messaggi
    8

    Predefinito

    Ok va bene mettimi in contatto con lui grazie molte!!.

  13. #13
    RadioGulliver non è connesso Neofita
    Data registrazione
    05-08-2011
    Messaggi
    8

    Predefinito

    Cmq non trovo errori nemmeno negli altri file php con query li ho controllati tutti e non capisco perchè il login da sempre lo stesso errore!!qualcuno che può gentilmente rispondere e aiutarmi!!

  14. #14
    GraphOGLRisorse non è connesso AlterGuru 2500
    Data registrazione
    14-02-2015
    Messaggi
    4,244

    Predefinito

    Salve,
    se il problema è dovuto solo a questa query:
    Codice:
    SELECT email FROM rp_users WHERE username = 'Morpheus"
    per poterla aiutare, dovrebbe riportare qui semplicemente il codice dove risiede tale query. Il fatto poi, che a lei l'errore non risulti da nessuna parte, non significa che non ci sia.

    Solo lei può sapere/verificare in quale file risiede il codice con la query relativa al messaggio di errore.

    Cordiali saluti.
    Ultima modifica di GraphOGLRisorse : 12-09-2021 alle ore 19.20.09

  15. #15
    mzanella non è connesso AlterGuru
    Data registrazione
    29-12-2015
    Messaggi
    1,954

    Predefinito

    Citazione Originalmente inviato da RadioGulliver Visualizza messaggio
    Ok va bene mettimi in contatto con lui grazie molte!!.
    Ho chiesto al mio conoscente se era disponibile, purtroppo anche lui in questo periodo è troppo occupato con il lavoro.

    I suggerimenti che do più spesso:


Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •