Visualizzazione dei risultati da 1 a 9 su 9

Discussione: .htaccess

  1. #1

    .htaccess

    Sono 2 giorni che smanetto inutilmente. vorrei che data l'url:
    http://miosito.it/prova.php?variabile=valore
    diventasse
    http://miosito.it/system.php?page=pr...riabile=valore

    ovvero mi mettesse la pagina (sia .php che .html che boh .dio) come parametro alla pagina system.php e che mantenesse gli altri parametri
    il RewriteEngine è on e funziona, è che non so trovare una regular expression corretta.

    Help, tnx

  2. #2
    up

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    111
    vediamo se hai capito:
    hai una pagina prova.php e da lì vuoi andare in system.php mettendo qualche parametro, tra i quali la pagina di provenienza page=prova.php

    e il problema dove sta?
    invece di dire system.php?par1=tot&page=prova.php?par2=tot

    scrivi system.php?par1=tot&page=tot&par2=tot

    poi nell'altra pagina ricomponi l'url orginale, tipo in questo modo:

    $url = $_GET['page'] . '?par2=' . $_GET['par2'];

    spero di esser stato d'aiuto

  4. #4
    da specifiche un utente può fare query al database attraverso:
    http://..../get.php?select=campi&where=campi
    oppure richiedere file xml che vengono generati dinamicamente in base al nome
    http://.../catalogo-prodotti.xml
    oppure salvare i dati:
    http://.../post.php?variabile=stringaxml

    E io devo fare una pagina system.php che gestisca il tipo di richiesta e crei dinamicamente la risposta. quindi visto che devo leggermi il nome del file xml e che di altre pagine php ho solo get.php e post.php a questo punto mi leggo la pagina come parametro e poi faccio
    if($_GET[page]=='catalogo.xml') then.... creaxml del catalogo
    if ($_GET[page]=='get.php') then querysql con i vari parametri che aveva get.php
    ecc. ecc.

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    111
    non capisco quale sia il problema

    (nel codice di system.php che hai scritto c'è qualche errore di sintassi, ma immagino sia uno pseudocodice..)

  6. #6
    il problema sta nel fatto che devo avere una regular expression dell'htaccess che mi faccia il redirect in automatico a system.php di qualunque pagina un utente possa andare a scrivere nel suo browser. ne ho provate diverse come

    RewriteCond %{QUERY_STRING} (.*)
    RewriteRule ^(.*)\.(htm|html|xml)$ /tw/system.php?page=$1&filetype=$2&%{QUERY_STRING} [L]

    però se come estensione dei file oltre a htm ecc. aggiungo anche php non so per quale motivo mi da errore del server. E comunque credo che ci sia una scrittura migliore che eviti anche di considerare le estensioni che a me non importa

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    111
    ora credo di aver capito

    non ti so aiutare per quanto riguarda l'.htaccess, ma ti posso proporre una soluzione alternativa da ignorante.

    if (!isset($_SERVER['QUERY_STRING'])) { header( "Location: /"); }

    ovviamente questo "filtro" fa acqua ma può essere perfezionato aggiungendo altre condizioni alla if

  8. #8

  9. #9
    Grazie per l'idea di fare l'if. Può tornarmi utile. Se non si trova come farlo via htaccess provo ad adottare questa soluzione

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.