Visualizzazione risultati 1 fino 6 di 6

Discussione: [PHP]funzione che non funziona

  1. #1
    Guest

    Predefinito [PHP]funzione che non funziona

    perchè questa riga di codice non va sui server altervista mentre in locale si?

    Codice PHP:
    $html = @file_get_contents($recurl, "r")
    :?????:

  2. #2
    Guest

    Predefinito

    non potresti postare tutto lo script?

  3. #3
    Guest

    Predefinito

    eccolo...

    Codice PHP:
    <?php
    require_once("settings.php");
    require_once(
    "header.txt");

    if (empty(
    $_REQUEST['name'])) {myerror("Inserisci un nome!");} else {$name=htmlspecialchars("$_REQUEST[name]");}
    if (empty(
    $_REQUEST['email'])) {myerror("Inserisci un e-mail!");} else {$email=htmlspecialchars("$_REQUEST[email]");}
    if (!
    preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email)) {myerror("Inserisci un e-mail valida!");}
    if (empty(
    $_REQUEST['title'])) {myerror("Inserisci il titolo (nome) del tuo sito!");} else {$title=htmlspecialchars("$_REQUEST[title]");}

    if (empty(
    $_REQUEST['url'])) {myerror("Inserisci l URL del tuo sito!");} else {$url=rtrim(htmlspecialchars("$_REQUEST[url]"));}
    if (!(
    preg_match("/(http:\/\/+[\w\-]+\.[\w\-]+)/i",$url))) {myerror("URL non valido!");}
    if (empty(
    $_REQUEST['recurl']) || $_REQUEST['recurl']=="http://") {myerror("Inserisci url della tua pagina in cui si trova il link che porta al mio sito!");} else {$recurl=rtrim(htmlspecialchars("$_REQUEST[recurl]"));}
    if (!(
    preg_match("/(http:\/\/+[\w\-]+\.[\w\-]+)/i",$recurl))) {myerror("URL del mio link non valido!");}

    preg_match("/^(http:\/\/)?([^\/]+)/i",$url, $matches);
    preg_match("/^(http:\/\/)?([^\/]+)/i",$recurl, $recmatches);
    if (
    $matches[2] != $recmatches[2]) {myerror("Il link che porta alla mia pagina deve trovarsi nello stesso dominio del tuo sito!");}

    $url=str_replace("&amp;","&",$url);
    $recurl=str_replace("&amp;","&",$recurl);
    $site_url2 = str_replace("/","\\/",$settings['site_url']);

    if (empty(
    $_REQUEST['description'])) {myerror("Inserisci la descrizione del tuo sito!");} else {$description=htmlspecialchars("$_REQUEST[description]");}
    if(
    strlen($description)>200) {myerror("Descrizione troppo lunga! massimo 200 caratteri.");}

    $html = @file_get_contents($recurl, "r") or myerror("impossibile aprire URL!");
    if (!
    preg_match("/$site_url2/i",$html)) {
    myerror("Il nostro link (<a href=\"$settings[site_url]\">$settings[site_url]</a>) non è stato trovato nella tua pagina (<a href=\"$recurl\">$recurl</a>)!<br><br>
    Prima di procedere controlla di aver inserito in modo corretto il nostro indirizzo!"
    );
    }

    if(
    $settings['system'] == 2) {$newline="\r\n";}
    elseif(
    $settings['system'] == 3) {$newline="\r";}
    else {
    $newline="\n";}

    $fp = fopen($settings['linkfile'],"rb") or die("Impossibile aprire il file dei link ($settings[linkfile]) per leggere!");
    $content=@fread($fp,filesize($settings['linkfile']));
    fclose($fp);
    $content = trim(chop($content));
    $lines = explode($newline,$content);
    if (
    count($lines)>$settings['max_links']) {myerror("Al momento non è possibile inserire link");}

    $replacement = stripslashes("$name$settings[delimiter]$email$settings[delimiter]$title$settings[delimiter]$url$settings[delimiter]$recurl$settings[delimiter]$description$newline");

    if (
    $settings['add_to'] == 0) {
    $fp = fopen($settings['linkfile'],"rb");
    $links = @fread($fp,filesize($settings['linkfile']));
    fclose($fp);

    $replacement .= $links;

    $fp = fopen($settings['linkfile'],"wb") or myerror("Impossibile aprire il file dei link per scrivere! Impostare CHMOD al txt file a 666 (rw-rw-rw)!");
    fputs($fp,$replacement);
    fclose($fp);
    }
    else {
    $fp = fopen($settings['linkfile'],"ab") or myerror("Impossibile aprire il file dei link per scrivere! Impostare CHMOD al txt file a 666 (rw-rw-rw)!");
    fputs($fp,$replacement);
    fclose($fp);
    }

    if(
    $settings['notify'] == 1) {
    $message="Ciao,

    Link già presente nella pagina
    $settings[site_url]

    Dettagli Link:

    Nome:
    $name
    E-mail:
    $email
    URL:
    $url
    Link reciproco:
    $recurl
    Titolo:
    $title
    Descrizione:
    $description


    Fine messaggio

    "
    ;
    $headers = "From: $name <$email>\n";
    $headers .= "Reply-To: $name <$email>\n\n";
    mail("$settings[admin_email]","Nuovo Link Aggiunto",$message,$headers);
    }

    ?>
    <p align="center"><b>OK: Link inserito!</b></p>
    <p>&nbsp;</p>
    <p align="center">Grazie, il tuo link è stato inserito correttamente (aggiorna la pagina per vederlo)</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p align="center"><a href="<?php echo("$settings[site_url]"); ?>">Torna al Menu</a></p>
    <?
    require_once("footer.txt");
    exit();
    ?>

  4. #4
    L'avatar di heracleum
    heracleum non è connesso Utente storico
    Data registrazione
    21-01-2004
    Messaggi
    3,333

    Predefinito

    Visto che non è consentito aprire risorse remote, all'esterno del proprio spazio web, evidentemente il problema è che non piacciono URL assoluti alle funzioni che aprono files.
    Se non erro basta utilizzare URL relativi (per forza all'interno del proprio spazio web) e le funzioni di get file funzionano.
    Avvertimento: richiedere in privato questioni tecniche produrrà inevitabilmente una supercazzola prematurata come risposta. (5 served)

  5. #5
    Guest

    Predefinito

    questa è proprio una grossa limitazione...

    ma perchè non è consentito?
    cosa più mai succedere?

  6. #6
    Guest

    Predefinito

    dipende da impostazioni di av per nn usare troppo i server e nn avere problemi tipo virus ecc...

Regole di scrittura

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