Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Εχω μια σελιδα που φορτωνει συγκεκριμενες εικονες απο imageshack.

Επειδη ομως κατα καιρους κανω εκκαθαριση στην gallery, υπαρχουν περιπτωσεις που καποιες εικονες τις εχω διαγραψει, και στην σελιδα μου φαινεται ενα ασχημο κενο απο την εικονα που λειπει.

 

Μπορει καποιος να μου πει/γραψει/δωσει, μια γραμμη κωδικα html/php, ωστε αν δεν υπαρχει η εικονα που ζητά η σελιδα μου στο imageshack, να εμφανιζει μια άλλη γενική εικονα(generic)?

  • 3 εβδομάδες αργότερα...
Δημοσ.

Συζητουσα το θεμα με ενα φιλο, πιο σχετικο στα προγραμματιστικά από εμένα, και μου ειπε οτι δεν 'κανει' για τη δουλεια που θελω, κωδικας html, πρεπει να ειναι php.

Μπορει καποιος ομως να μου πει, ποια ειναι αυτη η γραμμη κωδικα που θα το κανει αυτο?

Δημοσ.

Ένας τρόπος για να το κάνεις αυτό me php, είναι να ελέγξεις αν τo url παράγει κάποιο error, δηλαδή αν εσύ προσπαθήσεις να τραβήξεις   ένα image από ένα invalid link το πιο πιθανό είναι σου παράγει το γνωστό 404 error. Άρα χρειάζεσαι να μάθεις αν το link που θα δώσεις είναι valid.

 

Για να το πετύχεις αυτό θα πρέπει να χρησιμοποιήσεις την function get_headers()

$response = get_headers($image_url);

//Αν κάνεις print_r το response θα πάρεις ένα output παρόμοιο με αυτο:

print_r($reponse);

/* Με αυτην την εντολή μπορείς να δεις τι περιέχει αυτή η $response. Θα έχουμε ένα output που θα μοιάζει με αυτο: */

(
    [0] => HTTP/1.1 200 OK
    [1] => Date: Sat, 29 May 2004 12:28:13 GMT
    [2] => Server: Apache/1.3.27 (Unix)  (Red-Hat/Linux)
    [3] => Last-Modified: Wed, 08 Jan 2003 23:11:55 GMT
    [4] => ETag: "3f80f-1b6-3e1cb03b"
    [5] => Accept-Ranges: bytes
    [6] => Content-Length: 438
    [7] => Connection: close
    [8] => Content-Type: text/html
)



 

Άρα από αυτο καταλαβαίνουμε ότι η πληροφορία που χρειαζόμαστε βρίσκεται στην πρώτη θέση του πίνακα από το response που παίρνουμε.

 

Άρα μπορείς να το ελέγξεις με αυτον τον τρόπο:

 

if(strpos($response[0], '404'))
{
  //Kane kati se periptosi pou den yparxei to image
}
else
{
 // To image yparxei, ara mporei na to deikseis kanonika
}

 

Δοκίμασε βέβαια και τις λύσεις που δίνουν απο το link, που έδωσε ο Parsifal, μπορεί κάποια από αυτες τις λύσεις να σε βολέψει καλύτερα.

  • Like 1

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...