Qualche domanda inerente il PHP.

Buon  pomeriggio allo staff,

a tutti gli amici ed alle amiche del forum.

Ho fatto qualche ricerca prima di aprire questo mio 3d, ma non ho trovato risposte alle mie domande.

Sono un neo-neo-neofita dell'universo PHP e voglio avvicinarmi a questa tecnologia lato server. Conosco solo  ASP.

Premetto scrivendo  che ho scaricato dal sito ufficiale il

PHP-5-0-4-Win32.zip;

Il PHPMyAdmin-2-2-1.zip (freephp.html.it);

e dovrei scaricare MySQL, sempre dal sito ufficiale. Domanda: è corretta la versione

MySQL-4-1-12a-win32.zip? E' pari a 37Mb. Lo chiedo a voi prima di farlo.

Seconda domanda: siccome realizzo delle applicazioni in ASP, ho installato sulla mia macchina l'IIS 5.1 su Win XP Pro SP2. Potrebbero esserci problemi se usassi questo server al posto dell'Apache? Da quanto ho letto un pò in giro da stamattina, non dovrebbero e IIS potrebbe tranquillamente processare pagine con estensione .php,

oltre al fatto che entrambi i server sono in "ascolto" sulla Porta 80.

Se installassi anche Apache,  potrebbero sorgere dei conflitti.

Qual'ora posso usare IIS per le mie applicazioni php, ci sono delle operazioni particolari, o configurazioni, da fare in fase di installazione del PHP, + mySQL + phpMyAdmin? Inoltre il PHPMyAdmin-2-2-1.zip che ho scaricato è compatibile con la versione 5-0-4 di PHP?

Chiedo scusa se la mia prima domanda farà perdere (spero non la pazienza! :)) un bel pò di tempo a coloro i quali cortesemente mi risponderanno. Ignoro completamente questo linguaggio. Grazie a tutti.

Floyd

inviato 11 anni fa
floyd
X 0 X

Ciao floyd e benvenuto su PHPnews.it  :D

Cercherò di rispondere con ordine alle tue domande.

Il phpMyAdmin che hai preso è vecchiotto. Scarica l'ultima versione dal sito ufficiale. Sarà compatibile con PHP 5 e con MySQL 4.1

Per quanto riguarda MySQL, la versione da te citata è quella giusta.

Se sviluppì anche in ASP allora puoi usare esclusivamente IIS. Se installi anche Apache dovresti metterlo in ascolto su una porta diversa dalla 80 (ad esempio 81) e richiamare i siti con http://localhost:81/pagina.php

Se usi solo IIS ti consiglio di scaricare l'installer di PHP, non l'archivio zippato. L'installer provvederà a configurare IIS. Non dovrebbero essere necessari altri particolari accorgimenti. Comunque eventuali problemi andrebbero affrontati uno per volta individuando nei files di configurazione cosa modificare. Tieni presente che quasiasi cosa tu scelga di installare comunque andrà configurata. Ma ne parliamo in un altro thread  ;)

Bye

risposto 11 anni fa
Gianni Tomasicchio
X 0 X

ciao Gianni 

grazie per la tua risposta. Allora....

ho scaricato l'installer del PHP5.0;

basterebbe solo fare doppio click e poi seguire gli step, o mi sbaglio?

ed ho visto nel sito http://www.phpmyadmin.net/ 2 versioni rilasciate  dell'interfaccia con il MySQL:

 1)phpMyAdmin 2.6.2-pl1 is released

This is patch level 1 for phpMyAdmin 2.6.2, containing fixes mostly for MySQL 5.0 and 4.1 issues.

2)phpMyAdmin 2.6.2 is released

Version 2.6.2 contains improvements for better MySQL 4.1 and 5.0 support, and many bug fixes. Enjoy!

Devo installare la patch level 1 da sola o devo scaricare anche

phpMyAdmin 2.6.2 ?

Oltre al fatto che è presente anche phpMyAdmin 2.6.3-rc1; ma ritengo che essendo ancora una release candidate, non  ne vale la pena. Giusto?

Quando avrò installato il PHP 5, se dovessero esserci problemi, posterò ancora su queste pagine.

Grazie ancora per la tua disponibilità.

Floyd

risposto 11 anni fa
floyd
X 0 X

Ciao floyd,

l'installer fa tutto da solo, se non ricordo male ti chiederà il tipo di web server su cui installare PHP, per il resto non dovresti avere problemi.

Per phpMyAdmin basta la sola phpMyAdmin 2.6.2-pl1, e aspetteremo che esca la 2.6.3 stabile.

Su PHPnews.it c'è un articolo che riguarda l'installazione di phpMyAdmin, potrebbe aiutarti.

Ti ricordo comunque che phpMyAdmin non è l'unico strumento per gestire MySQL. Ci sono diversi programmi sia per Windows che per Linux che potrebbero risultare anche più immediati e maneggevoli. phpMyAdmin è comunque lo strumento che più spesso viene usato per la gestione di database remoti (sul server) e quindi conviene imparare ad usarlo.

Per qualsiasi problema o dubbio non esitare a scrivere.

Alla prossima!

risposto 11 anni fa
Gianni Tomasicchio
X 0 X

ciao a te Gianni e grazie per la tua disponibilità.

Ieri sera ho installato il PHP5 e tutto è andato bene. Alla fine, per avere conferma dell'esito positivo, ho inserito un file nella root

principale del server con le seguenti righe:

<?php
phpinfo(); 
?>

e mi è apparsa la schermata di PHP. Il  primo passo, credo, è stato compiuto. Ok per il phpMyAdmin; mi scarico la versione che mi hai indicato tu, anche se, essendo alle primissime armi, vorrei attendere a

far interagire pagine php con MySQL. Devo imparare la sintassi prima e poi dopo interfacciare le pagine con il DB.

Vorrei chiederti dove posso trovare informazioni in merito al file

"php.ini" e come, eventualmente, cambiare delle impostazioni che potrebbero tornarmi utili nelle pagine di esempio che farò.

Ho letto nelle pagine del tutorial,molto ben fatte e chiare,  dell'estensione "mysql" e "mysqli". Tu ritieni che con l'installer non dovrebbero esserci problemi? a me non sembra di aver trovato "mysqli" all'apertura della pagina di PHP5, tra le diverse impostazioni.

Grazie e ci si legge.

Floyd

risposto 11 anni fa
floyd
X 0 X

Nell'installer non sono presenti le librerie che ti permettono di interfaccairti con MySQL e quindi phpMyAdmin non funzionerà...

Per ovviare a questa mancanza devi semplicemente scaricare l'archivio zippato di PHP, estrarlo ed individuare la cartella delle estensioni "ext" che andrai a copiare nella cartella in cui è stato installato PHP.

Per abilitare il caricamento delle estensioni mysql e mysqli puoi seguire l'articolo su PHPnews.it, la procedura è la stessa. Si tratta di modificare il php.ini, troverai tutto sull'articolo. Ad un certo punto ti verrà chiesto di copiare il file libmysql.dll nella cartella di windows. Anche questo file potrai trovarlo nell'archivio zippato di PHP.

Tieni presente che l'articolo prevede che PHP sia installato nella cartella C:\PHP e che la cartella delle estensioni sia C:\PHP\ext. Ovviamente dovrai adattare questi percorsi al tuo caso.

Non ti consiglio, in questa fase, lo studio delle impostazioni del php.ini. Dagli un'occhiata (è ben commentato) ma non ci stare a perdere la testa. Quando servirà effettuare delle modifiche te ne accorgerai...

risposto 11 anni fa
Gianni Tomasicchio
X 0 X

ciao Gianni, eccomi ancora qui;

spero di non disturbare + di tanto ma sto avendo  problemi con l'installazione di "mysqli".

Dunque... ho seguito l'articolo del sito per installare "mysqli" ma mi appare un errore nel momento in cui vado a rikiamare il file

"info.php".  In pratica mi appare una wizard di warning del tipo:

PHP Startup: Unable to load dynamiv library 'C:\PHP\ext\php-mysqli.dll' - Accesso negato.

I passaggi li ho eseguiti come dall'artcolo:

Il file "libmysql.dll" l'ho copiato nella cartella Windows;

Ho aperto il file "php.ini" ed ho modificato la stringa "extension_dir"  in modo tale che puntasse alla cartella delle estensioni:

C:\PHP\ext (anche se la lettera che contraddistingue il mio SO non è C:\).

Quando alla fine aggiungo "extension=php_mysqli.dll" mi appare quell'errore di cui ti ho scritto + su.

Lo stesso warning appare se tolgo il commento (;) dalla riga >> "extension=php_mysq.dll", presente sempre nel file php.ini.

Potrebbe dipendere dal fatto che non ho installato ancora il DB MySQL?

Grazie 1000

Floyd

risposto 11 anni fa
floyd
X 0 X

Il problema non dipende dalla presenza o meno di MySQL ma dal fatto che il php non riesce a caricare l'estensione. I passaggi che segue sono questi:

1) Il PHP legge il php.ini e vede che estensioni caricare (le chiamate extension=...)

2) cerca queste estensioni nella cartella specificata dalla direttiva "extension_dir"

3) nel caso non riesce a trovarla, da un errore simile a quello che hai ottenuto, altrimenti la carica ma quest'ultima richiede un ulteriore libreria, la "libmysql.dll"

4) allora il PHP cerca questo files nei vari percorsi standard di inclusione di windows. Uno di questi è proprio la cartella "windows", ma ce ne sono altri tipo la "windows\system" e la "windows\system32"

5) se PHP non trova "libmysql.dll" ti darà un errore simile a quello che hai ricevuto.

Ricapitolando: PHP o non ha trovato "php_mysqli.dll" oppure non ha trovato "libmysql.dll". Nel primo caso va verificata la presenza del file nella cartella definita dalla direttiva "extension_dir". Nel secondo caso devi verificare che "php_mysqli.dll" sia stato posto in una cartella appartenente ai PATH di inclusione di windows (li puoi vedere dal prompt del dos, scrivendo semplicemente "path" e invio)

Non credo ci sia altro da controllare...

risposto 11 anni fa
Gianni Tomasicchio
X 0 X

ciao Gianni, ho fatto tutte le prove che mi hai detto ma mi appare sempre quell'errore di cui ho scritto prima.

La "libmysql.dll" l'ho messa prima in Windows, poi in System32 e poi ancora in System.

Non cambia il risultato.

Nella cartella "ext" ci sono le 2 dll >> "php_mysqli.dll" e "php_mysql.dll" .

Non so proprio che altro fare.

Domanda: nel file php.ini non deve esserci il  ;  prima di php_mysqli.dll, giusto? In quel caso nn sarebbe letto in quanto il ; è interpretato come un commento. E' così?

Grazie ancora

Floyd

risposto 11 anni fa
floyd
X 0 X

si, il ";" serve a commentare, quindi a disattivare, la direttiva.

Se ti va, allega il tuo php.ini a questa discussione.

risposto 11 anni fa
Gianni Tomasicchio
X 0 X

ecco il file php.ini allegato.

Grazie

Floyd

[allegato eliminato dall\' amministratore]

risposto 11 anni fa
floyd
X 0 X

ho notato che ci sono i ";" davanti alle direttive per il caricamento delle estensioni mysql e mysqli. Li hai rimessi?

risposto 11 anni fa
Gianni Tomasicchio
X 0 X

se tolgo i ; mi dà   quell'errore, Gianni.

Adesso in locale ho rimesso i ; ma  nella pagina "info.php" non appare installato il modulo mysqli, come spiegato nell'articolo.

risposto 11 anni fa
floyd
X 0 X

in un tuo messaggio precedente riportavi l'errore che si riferiva alla cartella "C:\PHP\ext"  mentre nel php.ini c'è:

extension_dir = "F:\PHP\ext"

?

risposto 11 anni fa
Gianni Tomasicchio
X 0 X

si, l'HD è F:\ e non C:\;

il server è installato in tale directory, così come la cartella "PHP".

I percorsi sono corretti.

risposto 11 anni fa
floyd
X 0 X

Non so più cosa pensare  :crazy:

1) lancia lo script phpinfo.php e cerca il valore assunto dalla direttiva extension_dir. E' quello giusto?

2) riavvia windows (fa sempre bene :P )

3) accendi un cero al tuo santo patrono

risposto 11 anni fa
Gianni Tomasicchio
X 0 X

il valore di extension_dir è quello che è settato nel file che ti ho allegato: F:\PHP\ext

non saprei davvero nemmeno io come fare.

Spero che per questa cosa non debba rinunciare a PHP!

Grazie.

Floyd

risposto 11 anni fa
floyd
X 0 X

hai riavviato IIS ad ogni tentativo? Ora in che cartella sta la libmysql.dll? Hai verificato che tale cartella è presente nell'elenco che ti restituisce il comando "path" lanciato da prompt del DOS?

risposto 11 anni fa
Gianni Tomasicchio
X 0 X

Il riavvio di IIS non l'ho fatto. Cmq adesso libmysql.dll sta in F:\Windows.

Come ti ho scritto anche prima, ho messo libmysql.dll  anche in Windows\System32 e Windows\system. Grazie.

Floyd

risposto 11 anni fa
floyd
X 0 X

Mi sorge il dubbio che il problema possa essere legato alla mancanza di autorizzazioni dell'utente IUSR_MACHINENAME (l'utente con cui gira IIS) sui files da caricare.

Sapresti verificare se tale utente ha i diritti di lettura ed esecuzione sulle librerie in questione?

risposto 11 anni fa
Gianni Tomasicchio
X 0 X

Nessuna novità? Ho fatto qualche ricerca e sembra che il suggerimento di prima sia fondato.

Ciao.

risposto 11 anni fa
Gianni Tomasicchio
X 0 X

Ciao Gianni

grazie ancora x il tuo interessamento. Dunque... l'altra sera (lunedì)

ho disinstallato il PHP 5 ed ho lasciato solo la cartella di PHPMyAdmin

nella root del serve IIS. Ripromettendomi, appena posso, di reinstallarlo

da zero. Comincio con l'installer e poi scompatto la cartella zippata, come nella precedente installazione. I files da caricare ai quali ti riferisci, sarebbero le 2 estensioni mysqli.dll e mysql.dll?

A queste due dovrei aggiungere IUSR_nomeMacchina?

In ASP solitamente dò i permessi di modifica (lettura a scrittura)  alla cartella che contiene il DB, quando ci sono da inserire dati, ecc..

La stessa cosa dovrei fare con PHP? Se cortesemente mi indichi a quali file dare i permessi, o se si tratta di dare permessi a qualche cartella.

Grazie

Floyd

risposto 11 anni fa
floyd
X 0 X

Da quanto ho letto in giro (non uso IIS  ;) ) PHP su IIS gira come CGI e diventa un processo che gira con le credenziali di IUSR_MACHINENAME ovverro dell'utente che sulla tua macchina rappresenta IIS.

Poiché hai ricevuto un errore di "accesso negato" probabilemnte potrebbe accadere che il PHP non possieda i diritti per caricare (diritti di lettura ed esecuzione) le librerie in questione.

Potresti provare quindi a dare i permessi di lettura, strittura ed esecuzione alla cartella in cui risiede il PHP, e diritti di lettura ed esecuzione alla libreria libmysql.dll

E' un tentativo...

Ciao!

risposto 11 anni fa
Gianni Tomasicchio
X 0 X

ciao sono nuova,

non so bene come funziona qui comunque provo a dirti il mio problema:

non sono pratica di php apache mysql ecc. ho seguito passo passo l'installazione di tutto ma quando apro http://localhost/info.php non vedo l'stensione... mysql... non so davvero da dove cominciare per capire cosa non va

grazie milllllllllle :'(

risposto 10 anni fa
lunetta
X 0 X

Devi solo ricontrollare di aver seguito passo passo la guida  :dunno:

Hai provato ad installare PHP in precedenza? Ci possono essere dei residui di vecchie installazioni?

 :bye:

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

si ho rifatto tutto, credo che non mi legga la directory c:\php\ext .... ma se sostituissi il mio php.ini con uno che funziona?

o confrontarlo con uno che va?

risposto 10 anni fa
lunetta
X 0 X

no non ho mai installato prima il php  zero residui

risposto 10 anni fa
lunetta
X 0 X

quando riavvii Apache ricevi degli errori?

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

negativo nessun errore...

risposto 10 anni fa
lunetta
X 0 X

puoi controllare se il php.ini non ha qualche altra estensione nascosta da Windows (tipo php.ini.dist con ".dist" nascosto)? Che Windows usi?

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

xp professional, solo che guardando due diverse guide in una mi dice di modificare php.ini-dist in php.ini e in un'altra php.ini-recommanded in php.ini....

sono disperata non ci capisco niente

risposto 10 anni fa
lunetta
X 0 X

usa php.ini-dist

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

ok  e poi...

risposto 10 anni fa
lunetta
X 0 X
risposto 10 anni fa
Gianni Tomasicchio
X 0 X

già fatto tutto e ricontrollato trenta volte ... mille tentativi le estensioni non mi compaiono neanche se prego in thailandese...

risposto 10 anni fa
lunetta
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda