Doppelte einträge verhindern

Knacki135

Grünschnabel
also ich hab da ein kleines problem, ich will ein link kleines linkarchiv machen aba ich will auch verhindern das doppelte einträge vorkommen, also das dann ne nachricht kommt $link bereits vorhanden. Ich habe schon überall gesucht aber weil ich noch anfänger bin nicht schlauer geworden. Also hier mal der code:
PHP:
<?php
$input = $_POST['link'];
$rest = substr ($input,0,1);
$schreibe = "<a href=\"$input\" target=\"_blank\">$input</a><br>
";
}
else {
   $schreibe = "<a href=\"http://$input\" target=\"_blank\">http://$input</a><br>
";
}
$file = "linkliste.txt";
$open = fopen ($file,"r+");
$lesen = fread ($open,filesize($file));
rewind ($open);
fwrite ($open,$lesen.$schreibe);
echo "Link erfolgreich eingetragen";
fclose ($open);
?>
in der txt datei hatt jeder link 1x zeile fals ihr es braucht ;)

Thx schonmal
 
Also ich würde so ein Linkarchiv nicht in einer txt-Datei speichern sondern in einer Datenbank, da man mit der viel schneller arbeiten kann und es einfach sicherer und praktischer ist. Kostenlosen und passenden Webspace findest du zum Beispiel hier. Alternativ ist es natürlich möglich mit csv-Dateien arbeiten, doch allerdings würde ich dir schon zu MySQL raten.
MfG, Andy
 
thx für die schnelle antwort aber mit mysql kenn ich mich so garnicht aus ... wäre schon toll iwie was mit array&so ^^
 
Das was du da machen willst ist eigentlich sehr leicht. Lese dir doch einfach mal die folgenden Artikel durch und du wirst MySQL lieben lernen. Es ist für solche Dinge, wie du sie hier machen willst echt praktischer und vorallem einfacher.
MfG, Andy
 
klingt jetzt vlt ein bisel doof aba könntest du mir nicht kurz sowas schreiben :) weil bei mir wird das noch ein bischn dauern bis ich dann endlich mal das erste bisch fertig habe ...
wenn nicht is auch ok ;)
 
also dann so?

PHP:
<?php
$input = $_POST['link'];
$rest = substr ($input,0,1);
$input = $_POST['link'];
$rest = substr ($input,0,1);
$ar = array file  ( string $input  )
$os = array( $ar );
if (in_array( $ar, $os)) {
    echo "$input eingetragen";
}
else { (in_array($ar, $os)) {
    echo "$input schon vorhanden";
}
?>


und insgesamt so ?:
PHP:
<?php
$input = $_POST['link'];
$rest = substr ($input,0,1);
$ar = array file  ( string $input  )
$os = array( $ar );
if (in_array( $ar, $os)) {
   $schreibe = "<a href=\"$input\" target=\"_blank\">$input</a><br>
";
}
else {
   $schreibe = "<a href=\"http://$input\" target=\"_blank\">http://$input</a><br>
";
}
$file = "linkliste.txt";
$open = fopen ($file,"r+");
$lesen = fread ($open,filesize($file));
rewind ($open);
fwrite ($open,$lesen.$schreibe);
echo "Link erfolgreich eingetragen";
fclose ($open); 
}
else { (in_array ($ar, $os)) {
    echo "$input schon vorhanden";
}
?>
 
Zuletzt bearbeitet:
Was soll das denn sein?
PHP:
else { (in_array ($ar, $os)) {
    echo "$input schon vorhanden";
}
Zu deiner obigen Frage, ob dir das jemand mit MySQL coden könnte. Hast du überhaupt die Möglichkeit mit Datenbanken auf deinem Webspace zu arbeiten? Wenn ja kann dir das natürlich jemand hier coden, doch Sinn der Sache ist es nicht, da du ja php lernen sollst und dazu gehört nunmal auch das Arbeiten mit MySQL.
MfG, Andy
 
das steht da wenn das nicht übereinstimmt aber du hast recht ich setz mich jetzt mal rann und werd mir alle 67 teile auf der seite reinziehen :p und dann mal n bischn basteln ^^
 
Das halte ich für eine gute Idee! Drt wirst du auch schon die perfekte Lösung für dein Problem finden. Und wenn du trotzdem noch Hilfe brauchen solltest, weißt du ja wo du sie bekommst.
MfG, Andy
 
Zurück