Autore Topic: #Error: 1064 DB MySQL importazione da localhost a remoto  (Letto 13011 volte)

Offline G67

  • Esploratore
  • **
  • Post: 67
    • Mostra profilo
Ciao a tutti,
con il mio linguaggio informatico poco tecnico cerco di spiegarvi il mio problema. Ho sviluppato il mio sito in locale con EasyPHP e tutto funzionava finchè non ho provato a caricare il DB sul server remoto dove ho la versione joomla 2.5.2 funzionante seguendo una guida ho fatto l'installazione in remoto per evitare di toccare manualmente il configuration.php. Ora quando tento di importare il file .sql, ottenuto con PhpMyadmin,  nel DB remoto MySql ottengo questo errore dal server:
 
#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 '

Deprecated:  Function eregi() is deprecated in C:\Programmi\Eas' at line 1
 
Ho letto che è un problema di compatibilità di versioni Mysql e che dovrei andare a modificare manualmente il parametro ma non so dove mettere le mani e quindi chiedo prima a voi se potete indicarmi le modifiche da eseguire passo passo. Ci sto lavorando da molto ed è l'ultimo scoglio prima di vedere il lavoro completato.
 
Qui di seguito alcune info:
phpMyAdmin - 2.9.1.1
Localhost Versione MySQL: 5.5.20-log
Server Versione MySQL: 5.0.92-enterprise-gpl-log
 
Grazie
G67
 
 
« Ultima modifica: 12 Mar 2012, 18:43:07 da G67 »

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 29904
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
    • Xataface Italia
Re:#Error: 1064 DB MySQL importazione da localhost a remoto
« Risposta #1 il: 12 Mar 2012, 18:43:58 »
Non devi mettere le mani da nessuna parte, devi solo esportare nuovamente il db ma questa volta seleziona da phpmyadmin modalità compatibile.
NEWS DataGrill Xataface Installer (Ver. 1.0.1) per Joomla 3.8.x - DEMO Gestione Magazzino

Offline G67

  • Esploratore
  • **
  • Post: 67
    • Mostra profilo
Re:#Error: 1064 DB MySQL importazione da localhost a remoto
« Risposta #2 il: 12 Mar 2012, 18:50:59 »
grazie della risposta super rapida.
Ho già letto questa riposta ma non capisco cosa significa. Intendi qui?

Modo di compatibilità SQLNONEANSIDB2MAXDBMYSQL323MYSQL40MSSQL ORACLEPOSTGRESQLTRADITIONAL
Ne ho provate due ma non cambia niente ho sempre lo stesso errore quando provo ad importarlo nel database in remoto
 >:(
« Ultima modifica: 12 Mar 2012, 18:52:41 da G67 »

Offline G67

  • Esploratore
  • **
  • Post: 67
    • Mostra profilo
Re:#Error: 1064 DB MySQL importazione da localhost a remoto
« Risposta #3 il: 12 Mar 2012, 19:13:35 »
Mi potresti spiegare meglio, per favore?  :)   Ho provato con compatibilità  MYSQL40 - MYSQL 323 ma l'errore non cambia  :(
« Ultima modifica: 12 Mar 2012, 19:16:27 da G67 »

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 29904
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
    • Xataface Italia
Re:#Error: 1064 DB MySQL importazione da localhost a remoto
« Risposta #4 il: 12 Mar 2012, 20:18:21 »
Hai provato nell'export o nell'import?
NEWS DataGrill Xataface Installer (Ver. 1.0.1) per Joomla 3.8.x - DEMO Gestione Magazzino

Offline G67

  • Esploratore
  • **
  • Post: 67
    • Mostra profilo
Re:#Error: 1064 DB MySQL importazione da localhost a remoto
« Risposta #5 il: 12 Mar 2012, 22:04:05 »
Entrambi, prima ho esportato il file da locale e poi ho l'ho importato in remoto scegliendo le due opzioni

Offline alexdi

  • Appassionato
  • ***
  • Post: 304
  • Sesso: Maschio
  • M5S , forse riusciamo a mandarli tutti a casa !!
    • Mostra profilo
    • dillofacile
Re:#Error: 1064 DB MySQL importazione da localhost a remoto
« Risposta #6 il: 12 Mar 2012, 23:10:58 »
Sembrerebbe più un problema di compatibilità php pittosto che mysql.

Quindi, probabilmente sul server hai una versione php più recente di quella in locale ed esce l' errore.

http://php.net/manual/en/function.eregi.php

Probabilmente all' interno del file .sql c'è la creazione di una "procedure" o simile che utilizza la funzione eregi() o un riferimento ad un file php che si intravede dal tuo primo post , che la contiene (non so bene come funziona ma più o meno siamo li) e che permetterebbe di scoprire quale componente/plugin/modulo utilizza questa funzione.

Prova a vedere, possiamo verificare quale sia il componente/modulo/plugin che utilizza eregi() o possiamo provare per esempio a rimuovere la parte incriminata dal file .sql

Non è la specie più intelligente a sopravvivere e nemmeno quella piu' forte. E' quella più predisposta al cambiamento. Charles Darwin

Blog Personale

Offline G67

  • Esploratore
  • **
  • Post: 67
    • Mostra profilo
Re:#Error: 1064 DB MySQL importazione da localhost a remoto
« Risposta #7 il: 12 Mar 2012, 23:37:47 »
Sembrerebbe più un problema di compatibilità php pittosto che mysql.

Quindi, probabilmente sul server hai una versione php più recente di quella in locale ed esce l' errore.

http://php.net/manual/en/function.eregi.php

Probabilmente all' interno del file .sql c'è la creazione di una "procedure" o simile che utilizza la funzione eregi() o un riferimento ad un file php che si intravede dal tuo primo post , che la contiene (non so bene come funziona ma più o meno siamo li) e che permetterebbe di scoprire quale componente/plugin/modulo utilizza questa funzione.

Prova a vedere, possiamo verificare quale sia il componente/modulo/plugin che utilizza eregi() o possiamo provare per esempio a rimuovere la parte incriminata dal file .sql

Ciao alexdi,
la versione del Php del server è 5.3.10, posso scegliere di utilizzare anche la versione 5.2.17.
 
Il file php a cui si riferisce l'errore è libraries\plug_interface.lib.php, come si riusciamo a modificare il file e capire quale la parte è da eliminare? Leggerò con attenzione il link che mi hai postato ma non ho una formazione informatica così approfondita: spero di riuscire a capire.
grazie  :)
G67
« Ultima modifica: 12 Mar 2012, 23:49:41 da G67 »

Offline alexdi

  • Appassionato
  • ***
  • Post: 304
  • Sesso: Maschio
  • M5S , forse riusciamo a mandarli tutti a casa !!
    • Mostra profilo
    • dillofacile
Re:#Error: 1064 DB MySQL importazione da localhost a remoto
« Risposta #8 il: 12 Mar 2012, 23:54:44 »
plug_interface.lib.php dovrebbe essere una libreria aggiuntiva aggiunta da qualche estensione che hai installato.

Dal nome sembra un plugin che hai installato. Il nome ti dice niente ?

All' interno di quel file potresti trovare la funzione eregi() che potresti provare a sostituire con la funzione preg_match (ma dovresti postare sia il codice del file che del .sql per capire bene se si puo fare).

Più veloce è l' altra prova. Scegli di utilizzare 5.2.17 e l' importazione dovrebbe andar bene però non mi ricordo se va bene per joomla 2.5.2 ma poco male, non dovrebbero esserci problemi a tornare avanti con php.

Non è la specie più intelligente a sopravvivere e nemmeno quella piu' forte. E' quella più predisposta al cambiamento. Charles Darwin

Blog Personale

Offline G67

  • Esploratore
  • **
  • Post: 67
    • Mostra profilo
Re:#Error: 1064 DB MySQL importazione da localhost a remoto
« Risposta #9 il: 13 Mar 2012, 10:56:48 »
Il nome del file non mi dice niente posso guardare meglio, se capisco a cosa si riferisce potrei togliere il componente o il plugin e installarlo solo in remoto. Cosa ne pensi? Il requisito minimo del PHP è 5.2.4 + per joomla versione 2.5.2

Offline G67

  • Esploratore
  • **
  • Post: 67
    • Mostra profilo
Re:#Error: 1064 DB MySQL importazione da localhost a remoto
« Risposta #10 il: 13 Mar 2012, 15:33:36 »
questo è  il file  >:(  ora però non so che fare
 

[allegato eliminato da un amministratore essendo vecchio più di un anno]
« Ultima modifica: 13 Mar 2012, 23:29:10 da G67 »

Offline alexdi

  • Appassionato
  • ***
  • Post: 304
  • Sesso: Maschio
  • M5S , forse riusciamo a mandarli tutti a casa !!
    • Mostra profilo
    • dillofacile
Re:#Error: 1064 DB MySQL importazione da localhost a remoto
« Risposta #11 il: 13 Mar 2012, 17:38:24 »
...all' inizio del file sostituisci:

* @uses    eregi() con ->* @uses     preg_match().

poco sotto, all' interno della funzione PMA_getPlugins($plugins_dir, $plugin_param) , sostituisci

if (is_file($plugins_dir . $file) && eregi('\.php$', $file)) {
con
if (is_file($plugins_dir . $file) && preg_match('\.php$', $file)) {

dovrebbe funzionare.

Comunque, se anche metti php alla versione 5.2.17 funziona tutto. Infatti, 5.2.17 e maggiore di 5.2.4 verione minima per joomla (17 > di 4 ;) )

Non è la specie più intelligente a sopravvivere e nemmeno quella piu' forte. E' quella più predisposta al cambiamento. Charles Darwin

Blog Personale

Offline G67

  • Esploratore
  • **
  • Post: 67
    • Mostra profilo
Re:#Error: 1064 DB MySQL importazione da localhost a remoto
« Risposta #12 il: 13 Mar 2012, 17:43:17 »
ho provato a cambiare la versione ma restituisce lo stesso errore ora provo come mi stai suggerendo tu e poi ti faccio sapere
grazieeee per l'interessamento
Ciao
G67

Offline alexdi

  • Appassionato
  • ***
  • Post: 304
  • Sesso: Maschio
  • M5S , forse riusciamo a mandarli tutti a casa !!
    • Mostra profilo
    • dillofacile
Re:#Error: 1064 DB MySQL importazione da localhost a remoto
« Risposta #13 il: 13 Mar 2012, 17:47:28 »
ho provato a cambiare la versione ma restituisce lo stesso errore ora provo come mi stai suggerendo tu e poi ti faccio sapere
grazieeee per l'interessamento
Ciao
G67

...strano , io la sapevo così (17>4  :o ) , non è che c'è una funzione anche per ,  tipo , restartare il server web (in locale, per fargli prendere delle modifiche php, occorre poi fermare e riavviare il server apache).
Non è la specie più intelligente a sopravvivere e nemmeno quella piu' forte. E' quella più predisposta al cambiamento. Charles Darwin

Blog Personale

Offline G67

  • Esploratore
  • **
  • Post: 67
    • Mostra profilo
Re:#Error: 1064 DB MySQL importazione da localhost a remoto
« Risposta #14 il: 13 Mar 2012, 18:02:10 »
ho provato con la modifica che mi hai suggerito ma già in locale mi da questo errore:
 
Warning: preg_match() [function.preg-match]: Delimiter must not be alphanumeric or backslash in C:\Programmi\EasyPHP-5.3.9\www\phpmyadmin\libraries\plugin_interface.lib.php on line 30

e compare anche una finestra con messaggio rosso
Errore
 
Non posso caricare i plugins di esportazione. Controlla l'installazione!
>:( 
 
« Ultima modifica: 13 Mar 2012, 18:03:44 da G67 »

Offline alexdi

  • Appassionato
  • ***
  • Post: 304
  • Sesso: Maschio
  • M5S , forse riusciamo a mandarli tutti a casa !!
    • Mostra profilo
    • dillofacile
Re:#Error: 1064 DB MySQL importazione da localhost a remoto
« Risposta #15 il: 13 Mar 2012, 18:12:01 »
...azz, si complica un pò, ci penso....

ma che razza di plugin, componente è ?

ti serve veramente ?

posta anche il file .sql (lo alleghi o lo metti tra i tag code (icona #))
Non è la specie più intelligente a sopravvivere e nemmeno quella piu' forte. E' quella più predisposta al cambiamento. Charles Darwin

Blog Personale

Offline alexdi

  • Appassionato
  • ***
  • Post: 304
  • Sesso: Maschio
  • M5S , forse riusciamo a mandarli tutti a casa !!
    • Mostra profilo
    • dillofacile
Re:#Error: 1064 DB MySQL importazione da localhost a remoto
« Risposta #16 il: 13 Mar 2012, 18:50:51 »
prova:

preg_match('\.php$\', $file))
(aggiungi lo slash evidenziato)
http://php.net/manual/en/function.preg-match.php
oppure sostituiscila con

strpos($file,".php",(strlen($file)-4)))

Chiaramente salva il file originale.

preg_match lavora con le così dette "espressioni regolari". Mi ci sono imbattuto tempo fa ma sono difficili da digerire.

la strpos con strlen no è che sia così elegante però dovrebbe raggiungere lo scopo che è quello di verificare se la variabile $file contiene alla fine la stringa ".php".


Solo che quì stiamo andando forse un pò troppo avanti.

Postami il file .sql come ti dicevo prima.

Ma di che estensione si tratta ? Se non è commerciale la puoi scrivere ?
Non è la specie più intelligente a sopravvivere e nemmeno quella piu' forte. E' quella più predisposta al cambiamento. Charles Darwin

Blog Personale

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 29904
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
    • Xataface Italia
Re:#Error: 1064 DB MySQL importazione da localhost a remoto
« Risposta #17 il: 13 Mar 2012, 19:17:45 »
@G67
Cortesemente non serve postare kilometri di codice, è più conveniente allegarlo in un file txt, per tenere meglio in ordine il forum e ove mai necessario postare solo le righe interessate rachiudendole col tag #. Ti chiedo cortesemente di editare il post kilometrico e alegare il file .txt corrispondente, grazie.
NEWS DataGrill Xataface Installer (Ver. 1.0.1) per Joomla 3.8.x - DEMO Gestione Magazzino

Offline G67

  • Esploratore
  • **
  • Post: 67
    • Mostra profilo
Re:#Error: 1064 DB MySQL importazione da localhost a remoto
« Risposta #18 il: 14 Mar 2012, 00:22:16 »
ti allego il file non so a quale componente si riferisce l'errore altrimenti lo rimuoverei immediatamente

[allegato eliminato da un amministratore essendo vecchio più di un anno]
« Ultima modifica: 14 Mar 2012, 00:29:48 da G67 »

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 29904
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
    • Xataface Italia
Re:#Error: 1064 DB MySQL importazione da localhost a remoto
« Risposta #19 il: 14 Mar 2012, 07:59:03 »
Sei sicuro di aver esportato solo il db di joomla? Quell'errore si riferisce più all'ambiente che a joomla.
NEWS DataGrill Xataface Installer (Ver. 1.0.1) per Joomla 3.8.x - DEMO Gestione Magazzino

 

Host

Torna su