Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Codice eseguito male su alcune stringhe

    Salve, mi serve una mano per districarmi in un problema apparentemente semplice ma di cui non vedo la "dritta".

    In breve ho una serie di if che, ricevuto in query string un nome (che può essere numerico o alfabetico ma comunque nel db è di tipo varchar), mi pesca e stampa un certo record e mi visualizza una copertina abbinata.
    Per quanto riguarda il record nessun problema.
    Sulla copertina qualcosa non va in alcuni casi.
    Il codice che invoca la stampa, per i casi in cui ho problemi (tralascio altri if dove va tutto bene) è:
    Codice PHP:
    echo "<img class='scheda img-fluid' src='copertine/";
    if (
    $tabella == 'numeriuno') {
        
    $albofix=str_replace(" ","-",$albo);
    }
    $copertina 'copertine/'.$albofix.'.jpg';
    if (
    file_exists($copertina)) {
        echo 
    "$albofix".".jpg'"." "."alt='n° $albo ($anno)'><br>";
    } else {
        echo 
    "nd.jpg'><br>";

    Il problema ce l'ho con alcune stringhe...
    Le copertine, laddove $albo è privo di spazi, si visualizzano sempre (anche quando $tabella punta a un'altra tabella del db), altrimenti provvedo a sostituire gli spazi con dei trattini, ricostruendo i nomi dei file copertina, che tuttavia in alcuni casi non si caricano poiché sul browser viene caricato il file nd.jpg.

    Esempi: correttamente convertiti Braccio Gigante in Braccio-Gigante, Popeye 1^ serie in Popeye-1^-serie, ma non Super Braccio 1^ serie: facendo un echo della variabile $albofix il nome è quello del file immagine, ma visualizzo nd.jpg.

  2. #2
    Utente di HTML.it L'avatar di ninja72
    Registrato dal
    May 2020
    residenza
    -
    Messaggi
    84
    Difficile risponderti solo vedendo quel codice, sarebbe interessante capire come fai l'upload delle immagini (copertine), forse c'è un errore sul nome del file immagine depositato sul server e quello scritto nel database, dunque la correlazione non va a buon fine.

  3. #3
    Grazie per l'interessamento.
    Le immagini in questione sono caricate via FTP in una cartella dedicata, quindi i loro nomi non subiscono alcuna manipolazione PHP in fase di upload. Prima del caricamento delle copertine ho provveduto manualmente, tramite i banali strumenti di Windows, a rinominare queste più particolari...
    Ho comunque notato che nella barra degli url i nomi delle copertine appaiono modificati:
    - Popeye 1^ serie invoca la copertina Popeye-1^-serie.jpg che ha url Popeye-1%5E-serie.jpg
    - Super Braccio 1^ serie invoca la copertina Super-Braccio-1^serie.jpg che ha url Super-Braccio-1%5E-serie.jpg
    Caricando i path assoluti dei file su browser, si vedono tutte e due, mentre richiamando le pagine che dovrebbero visualizzarle, vedo la prima ma non la seconda.

    Risolto, c'era uno spazio di troppo nel nome del file.
    Ultima modifica di Gas75; 19-05-2020 a 16:49

  4. #4
    Utente di HTML.it L'avatar di ninja72
    Registrato dal
    May 2020
    residenza
    -
    Messaggi
    84
    Figurati, il mio consiglio è quello di crearti uno script php che faccia sia l'upload della copertina che il salvataggio dei relativi dati su database, in modo da ridurre a zero questo tipo di errore.

  5. #5
    Lo script tra l'altro ce l'avrei pure, collaudato per un altro sito, ma per come è strutturato il db di questo sito, dovrei smanettare un bel po' (temo).

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 © 2020 vBulletin Solutions, Inc. All rights reserved.