Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 25
  1. #1

    use of undefined constant

    I files php girano regolarmente su phpMyAdmin 2.5.3 e MySQL 3.23.58 e senza errori di visualizzazione.
    I problemi di "Use of undefined constant"
    li riscontro in un server che ha installati phpMyAdmin 2.6.o-pl2 e MySQL 5.0.24

    Come immaginavo alla mia domanda fatta al provider la risposta è stata che non è possibile
    abilitare globalmente i notice perchè avrebbero ripercussione su tutti i suoi piani hosting.

    Come correggere questo tipo di errore che mi viene visualizzato ?

    PHP Notice: Undefined index: P in config.inc.php on line 2
    PHP Notice: Undefined index: tabella in confg.inc.php on line 4
    PHP Notice: Undefined index: variabili in include\config.inc.php on line 5
    PHP Notice: Undefined index: ordine in include\config.inc.php on line 6
    PHP Notice: Undefined index: come in include\config.inc.php on line 7
    PHP Notice: Undefined index: come in include\config.inc.php on line 8
    PHP Notice: Undefined index: query in include\config.inc.php on line 9
    PHP Notice: Undefined index: chiave in include\config.inc.php on line 10
    PHP Notice: Undefined index: chiave in include\config.inc.php on line 11


    Questo il config.ini.php
    <?php
    $errore = $_GET["E"];
    $page = $_GET["P"];
    if ($page < "1") {$page = "1";}
    $tabella = $_GET["tabella"];
    $variabili = $_GET["variabili"];
    $ordine = $_GET["ordine"];
    $come = $_GET["come"];
    if (!$come) {$come = $_POST["come"];}
    $query = $_GET["query"];
    $chiave = $_GET["chiave"];
    if (!$chiave) {$chiave = $_POST["chiave"];}

    //Settaggi per la connessione al database
    $hostname='...';
    $username='...';
    $password='...';
    $db='...';
    $global_db=mysql_connect($hostname, $username, $password) or die('No connect to the server. Check file config: ' . mysql_error());
    mysql_select_db($db, $global_db) or die('Database no selected. Check file config.inc.php');

    function Cerca($tabella,$campi,$ordine,$come,$colonna,$quer y,$page) {
    global $global_db,$res,$errore,$nresult,$foto,$SizeFoto,$ MaxRig,$pagtot;
    $Qstart = '0';
    $Qend = $MaxRig;
    if ($page > '1') {
    $Qstart = $Qstart + ($page * $MaxRig) - $MaxRig;
    $Qend = $Qend + ($page * $MaxRig) - $MaxRig;
    }
    $errore = FALSE;
    if ($come == '0') { // Termine di ricerca che inizia con la parola
    $Come = " LIKE '".$query."%'";
    }
    elseif ($come == '1') { // Termine di ricerca che contiene con la parola
    $Come = " LIKE '%".$query."%'";
    }
    elseif ($come == '2') { // Termine di ricerca che finisce con la parola
    $Come = " LIKE '%".$query."'";
    }
    $query_string = "SELECT num,name,cod FROM ".$tabella." WHERE ".$colonna.$Come;
    $result = mysql_query($query_string, $global_db);
    $nresult=0;
    while ($ris = mysql_fetch_array($result)) {
    $res[$nresult]['num'] = trim ($ris['num']);
    $res[$nresult]['name'] = htmlspecialchars (utf8_encode (trim ($ris['name'])),ENT_QUOTES);
    if ($res[$nresult]['num']) {
    $nresult++;
    }
    }

    $pagtot = ceil ($nresult / $MaxRig);
    $campo = explode (",",$campi);
    $ncampi = count ($campo);
    for ($i='0'; $i < $ncampi; $i++) {
    $campo[$i] = trim ($campo[$i]);
    }
    if ($ordine == '0') {
    $ordinato = "DESC";
    }
    elseif ($ordine == '1') {
    $ordinato = "ASC";
    }
    $query_string = "SELECT ".$campi." FROM ".$tabella." WHERE ".$colonna.$Come." ORDER BY ".$campo['0']." ".$ordinato." LIMIT ".$Qstart.", ".$Qend."";
    $result = mysql_query($query_string, $global_db);
    $i=0;
    while ($row = mysql_fetch_array($result)) {
    for ($ii='0'; $ii < $ncampi; $ii++) {
    $res[$i][$ii] = trim ($row[$campo[$ii]]);
    if ($campo[$ii] == "name") {
    $res[$i][$ii] = htmlspecialchars (utf8_encode ($res[$i][$ii]),ENT_QUOTES);
    }
    $res[$i][$campo[$ii]] = $res[$i][$ii];
    }
    $i++;
    }

    if ($nresult == '1') {
    $nofoto = FALSE;
    $foto = "../images/.../". strtoupper ($res['0']['num']).".jpg"; // Nome del file della foto
    if (!file_exists ($foto)) {
    $foto = "../images/.../nofoto.jpg"; // Nome del file in caso di assenza della foto
    $nofoto = TRUE;
    }
    list($width, $height, $type, $attr) = getimagesize($foto);
    $r = $SizeFoto / $width;
    $height = intval ($height * $r);
    $width = $SizeFoto;
    if (!$nofoto) {
    $foto = "<a href=\"".$foto."\" target=\"_blank\" title=\"".$res[0]['name']."\" onMouseOver=\"window.status='Clic to have the big photo ".$res[0]['name']."'; return true\" onMouseOut=\"window.status=' '\"><img src=\"".$foto."\" width=\"".$width."\" height=\"".$height."\" alt=\"".$res['0']['name']."\" border=\"0\" align=\"\"></a>";
    }
    else {
    $foto = "<img src=\"".$foto."\" width=\"".$width."\" height=\"".$height."\" alt=\"No Foto/Photo ".$res['0']['name']."\" border=\"0\" align=\"\" onMouseOver=\"window.status='No Foto/Photo '; return true\" onMouseOut=\"window.status=' '\">";
    }
    }
    }


    // Funzione in Javascript
    echo "<script>\n";
    echo "function Inc() {\n";
    echo " pagine=".$page.";\n";
    echo " pagine++;\n";
    echo " document.pages.P.value=pagine;\n";
    echo "}\n";
    echo "\n";
    echo "function Dec() {\n";
    echo " pagine=".$page.";\n";
    echo " pagine--;\n";
    echo " document.pages.P.value=pagine;\n";
    echo "}\n";
    echo "</script>";

  2. #2
    Moderatore di Off Topic, Kickstarter e XML L'avatar di Sky
    Registrato dal
    Jul 2000
    residenza
    Roma
    Messaggi
    1,053
    Potresti disabilitarli con la funzione error_reporting(E_ALL ~ E_NOTICE), sempre che non sia stata disabilitata dall'hoster (cosa abbastanza probabile)

    Ma sarebbe meglio accedere agli elementi degli array solo se inizializzati
    Lo Stato deve dare ai cittadini, come diritto, ciò che la mafia dà come favore.
    Carlo Alberto dalla Chiesa

    Facebook | Twitter | Last.fm | LinkedIn | Quora

  3. #3
    Io farei la cosa inversa invece.
    Installati l'utlima versione di MySQL e fai le prove in locale per capire a che punto devi modificare lo script.

    Sicuramente il tuo è un problema che nasce da una incompatibilità tra le versioni.

    Tieni conto che un hoster non è che si mette a modificare le policy di decine di siti perché te usi un programma vecchio di 4 anni e non vuoi assolutamente cambiare.
    Peraltro... con le nuove versioni di MySQL ci sono moltissime novità e funzionalità che la versione che usi te non ha, per cui "meglio cambiare, no"??

    <ALCIO />
    Per cortesia: no PVT Tecnici
    ******* LINKS *******
    SRL
    MetalWave

  4. #4
    Alcio 74,
    l'idea di rivedere il tutto non è male, ma sai che divertimento e se tra due anni si cambia ancora noi corriamo corriamo ed ancora corriamo. Comunque grazie per la tua disponibilità, ma devo cercare di risolvere in altro modo il problema, penso costi meno abbandonare il provider e cercare nel WEB intenazionale l'alternativa, magari in USA dove ho trovato piú disponibilità a risolvere le problematiche, mentre mi ero forse illuso di portare il lavoro in Italia.
    Se hai altri suggerimenti sono piú che mai graditi.

  5. #5
    La questione degli aggiornamenti è sempre la solita, e potremmo stare qui a chiacchierarne per mesi.

    Ti porto un paragone, però.
    Perché dopo tot anni è consigliabile cambiare macchina? Perché si usura, comincia a dare problemi , consuma parecchio e una volta sì e l'altra pure la devi portare dal meccanico.

    Così per un qualsiasi programma.
    Iniziano ad uscire fuori problemi di sicurezza, qualcuno trova le (inevitabili???) falle nel programma e le sfrutta con degli exploit per subentrare nei sistemi; vengono aggiunte delle funzioni magari utilissime, e soprattutto, i processi di sistema (quelli che girano "sotto" per intenderci) vengono migliorati, aumentando le operazioni svolte e magari l'utilizzo della RAM.
    Non ultima poi la questione che i sistemi operativi si aggiornano pr gli stessi motivi e dopo X anni non supportano più alcune versioni dei vari programmi!

    Io non ne farei una questione di disponibilità dei provider... ma proprio di adeguamento dei mezzi!

    Per tornare al topic.
    Volevo solo ricordarti, che MySQL usa comunque il linguaggio SQL standard per cui gran parte delle tue query, continueranno a funzionare come prima. Ergo: non credo che l'aggiornamento alla versione 5.x sia così distruttivo.
    Pensaci!

    <ALCIO />
    Per cortesia: no PVT Tecnici
    ******* LINKS *******
    SRL
    MetalWave

  6. #6
    MySql non c'entra, quei notice dipendono solo dalla configurazione di PHP.

    Sono peraltro semplicemente eliminabili:
    Codice PHP:
    if (isset($_GET["P"])) {
        
    $page $_GET["P"];


  7. #7
    Originariamente inviato da k.b
    MySql non c'entra, quei notice dipendono solo dalla configurazione di PHP.
    Sono peraltro semplicemente eliminabili:
    Codice PHP:
    if (isset($_GET["P"])) {
        
    $page $_GET["P"];


    Perfetto IsSet non fa vedere i notice, proprio perchè esamina per vedere se è stato assegnato un valore e quindi in questo caso penso ci sia la valutazione in 0 (zero) o sbaglio ?
    Modificando ad esempio ... ed altro funziona :
    //$come = $_GET["come"];
    if (isset($_GET["come"])) {
    $come = $_GET["come"];
    }

    mi rimarrebbe da modificare, sempre per non far vedere i notice :
    if (!$come) {$come = $_POST["come"];}

    Penso che anche le seguente che mi danno i notice vadano modificate nel file config.ini.php Poi dovró intevenire su tutte le altre variabili inserite nel config.ini.php altrimenti avró visualizzazioni dei notice dappertutto
    Quale l'istruzione esatta ?
    $coloreM = "#593AED"; // Colore per i maschi
    $coloreF = "#F2356D"; // Colore per le femmine
    $coloreI = "#000000"; // Colore per mancanza del sesso


    Ultimo aiutino,
    grazie

  8. #8
    codice:
    isset($_POST['come'])  ?  $come = $_POST['come']  :  $come = $coloreI;

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  9. #9
    Originariamente inviato da piero.mac
    codice:
    isset($_POST['come'])  ?  $come = $_POST['come']  :  $come = $coloreI;
    Evidentemente la mia mente a quasi 60anni si è arrugginita.
    Ho inserito :
    //if (!$come) {$come = $_POST["come"];}
    if (!$come) ($come = isset($_POST["come"])};
    )

    ma non va.

  10. #10
    Codice PHP:
    if (!$come && isset($_POST['come'])) {
        
    $come $_POST['come'];


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.