ik heb een script
dat ik half aan de gang heb gekregen
maar zit nu met een fout kom niet verde
wie zie wat ik fout doe


config.php


<?php

////////////////////////////////////////////////////////////////////////////////
// config.php
$IPAdres = "ipnummer"; // Het ip adres van de computer waar OtsDJ op staat
$Poort = "8080"; // De poort die de RAC server gebruikt
$ServerTimeOut = 5; // De maximale tijd voor de foutmelding te zien is.
$OfflineMelding = "Het is momenteel niet mogelijk om een plaat aan te vragen. Probeer het later nog eens."; // Foutmelding als de server offline is
$OfflineMelding1 = "De RAC server is offline!";  // Foutmelding als de server offline is. Admin melding
$PasWoord = "12345";  // Verander dit!

// show.php
$GeenZoekResultaten = "Je zoek opdracht heeft geen resultaten opgeleverd.";  // Bericht wanneer er geen zoek resultaten zijn

// go.php
$GoTitle = "De gegevens zijn verwerkt!"; //De titel van go.php
$GoTo = "zoeken.php"; // De pagina waar de bezoeker heen moet na het aanvragen
$IDCheckBestand = "id.txt"; // Het bestand waar de id's in staan.

// Design
$FontFace = "verdana";  // Lettertype
$FontColor = "black";   // letter kleur
$FontColorFout = "red"; // Letterkleur bij fouten
$FontSize = "2";        // letter grootte

?> 


zoeken.php


<?php

////////////////////////////////////////////////////////////////////////////////
// Verzoek Platen Script
// Met dit script kun je platen aanvragen die OtsDJ moet gaat draaien!
////////////////////////////////////////////////////////////////////////////////

require ("config.php");

$controleer = @fsockopen("$IPAdres", $Poort, $errno, $errstr, $ServerTimeOut);

////////////////////////////////////////////////////////////////////////////////

echo ("<html><head><title>OtsDJ Verzoek Platen Script</title></head><body>");
if ($controleer) {

   if($Verzoeken == "1") {
    echo "<font color=$FontColorFout face=$FontFace size=$FontSize>Sorry!, je hebt al een plaat aangevraagd.<br>
    Even geduld aub.</font>";
}
else {
    echo ("<font color=$FontColor face=$FontFace size=$FontSize>
    <form method=post action=show.php>
    Zoeken op: <input type=radio name=searchby value=artist>Artiest
    <input type=radio name=searchby value=title class=radio>Titel
    <input type=radio name=searchby value=any checked>alles<br>
    Resultaten moeten:<input type=radio name=matchtype value=begin>beginnen met zoek opdracht
    <input type=radio name=matchtype value=contain checked>zoek opdracht bevatten<br>
    Zoeken naar: <input type=text name=searchtext value='' maxlength=40 size=40>
    <input type=submit value=Zoeken name=submit></form></font>");

    }
}
@fclose ($controleer);

if (!$controleer){
    echo "<font color=$FontColorFout face=$FontFace size=$FontSize>$OfflineMelding</font>";
}

echo ("</body></html>");
?>


show.php

<?php

////////////////////////////////////////////////////////////////////////////////
// Verzoek Platen Script
////////////////////////////////////////////////////////////////////////////////

require ("config.php");

$controleer = @fsockopen("$IPAdres", $Poort, $errno, $errstr, $ServerTimeOut);

////////////////////////////////////////////////////////////////////////////////

echo ("<html><head><title>OtsDJ Verzoek Platen Script</title></head><body>");

if ($controleer) {

        echo ("<font color=$FontColor face=$FontFace size=$FontSize>Je ziet hier tot maximaal 100 resultaten. Zit je plaat er niet tussen, probeer dan je zoek opdracht te verbeteren.<br><br>Klik op de plaat om hem aan te vragen!<br><br>");
    $searchtext = str_replace(" ", "+", $searchtext);
    $Bal = file("http://$IPAdres:$Poort/x/search.cgi?searchby=$searchby&matchtype=$matchtype&searchtext=$searchtext", "w");
    $Bal = (implode("", $Bal));
    $Bal = str_replace("&copy 1996-2003 Ots Corporation Pty Ltd</b> - <i>Page generated internally by OtsDJ", "", $Bal);
    $Bal = strip_tags($Bal, '<br><a>');
    $Bal = str_replace("OtsDJ Remote Access ControlSearch Media Library!", "", $Bal);
    $Bal = str_replace("Search by: Artist Title any<br>Entries must: begin with contain&nbsp search text<br>Search text: Results of Search", "", $Bal);
    $Bal = str_replace("found.", "", $Bal);
    $Bal = str_replace("/x/item.cgi?", "go.php?action=request&id=$id", $Bal);

    $Bal = str_replace("/x/search.cgi?", "show2.php?", $Bal);
    $Bal = str_replace("Showing items", ", ", $Bal);
    $Bal = str_replace("No items were found which matched the specified criteria!<br><br clear=all>", "$GeenZoekResultaten", $Bal);
    $Bal = str_replace("<br><br clear=all>", "", $Bal);
    $Bal = str_replace("[ Previous page |", "", $Bal);
    $Bal = str_replace("Next page</a> ]", "</a>", $Bal);

    echo $Bal;

    include ("show2.php");
    include ("show3.php");
    include ("show4.php");
    include ("show5.php");
    include ("show6.php");
    include ("show7.php");
    include ("show8.php");
    include ("show9.php");
    include ("show10.php");


echo ("</font>");
}
@fclose ($controleer);

if (!$controleer){
    echo "<font color=red>$OfflineMelding</font>";
}

?>


Het beste is dus het script her schrijven
Het script werkt tot 12 jaar geleden goed
Ben toen de tijd gestopt
Wil weer opnieuw beginnen alleen dit werkte niet meer
Ja het ip adres is goed alleen geef de zoekopdracht niet weer dat is het probleem
Maar ga morgen even de aanpassing doen wat ze me hebben opgegeven kijken of het dan wil werken en anders ga ik op zoek naar iemand die het jan herschrijven voor mijn
Laat maar weten of mijn aanpassing werkt.
Laat ik weten zo gauw ik het heb geprobeerd
en nee dan werkt het nog steeds nier laat de zoek resultaat nog steeds niet zien

[size=xsmall]Toevoeging op 19/11/2019 18:02:05:[/size]

er zit nog een fout in regel 24 zegt hij

[size=xsmall]Toevoeging op 19/11/2019 18:03:58:[/size]

Notice: Undefined variable: searchby in /home/bonanza/domains/bonanza-radio.nl/public_html/nonstop/show.php on line 24

Notice: Undefined variable: matchtype in /home/bonanza/domains/bonanza-radio.nl/public_html/nonstop/show.php on line 24

Warning: file() expects parameter 2 to be integer, string given in /home/bonanza/domains/bonanza-radio.nl/public_html/nonstop/show.php on line 24


[size=xsmall]Toevoeging op 19/11/2019 18:11:14:[/size]

fout is nu weg maar werkt nog steeds niet snap er niks meer van
Voor $searchby en $matchtype geldt hetzelfde wat ik hierboven heb uitgelegd.
Dit zijn ook $_POST['.....']-variabelen.

Verder hoort die tweede parameter met "w" daar niet. Je kan ook file() vervangen door file_get_contents().
Je leest toch immers die URL uit.
yes de titels zijn zichtbaar
bedankt nu kan ik weer verder
nu nog de verbinding dat hij ze ook ga draaien
iemand die voor mijn dit script wil aan passen kom er niet meer aan uit nu weer een hoop foute in mijn go.php


go.php


<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);

////////////////////////////////////////////////////////////////////////////////
// Met dit script kun je platen aanvragen die OtsDJ moet gaat draaien!
////////////////////////////////////////////////////////////////////////////////

require ("config.php");

////////////////////////////////////////////////////////////////////////////////

if($Verzoeken == "1"){
    echo "<HTML><HEAD><META http-equiv=refresh content='25; URL=$GoTo'>
    </HEAD>
    <BODY><font color=$FontColorFout face=$FontFace size=$FontSize>Sorry!, je hebt al een plaat aangevraagd.<br>
    Even geduld aub.</font>
    </body>
    </html>";
}

else {

$Host = "http://$IPAdres";
$VolAdres = "$Host:$Poort/x/playlist.cgi?id=$id";

if ($action == "request") {

if(!is_writable($IDCheckBestand)) {
die("$IDCheckBestand heeft geen permissions 777!");
}

$Headlinestable = "$IDCheckBestand";
$OpenHeadlinestable = fopen ($Headlinestable, "r");
$HeadlinestableInhoud = fread ($OpenHeadlinestable, filesize ($Headlinestable));


$Regel = trim($HeadlinestableInhoud);
$Regel = str_replace("\n", "", $Regel);
$Regel = explode("|",$Regel);

if (in_array("$id", $Regel)) {
    die("<META http-equiv=refresh content='25; URL=zoeken.php'><font color=$FontColorFout face=$FontFace size=$FontSize>De plaat die je wilde horen kan niet worden aangevraagd!</font>");
fclose ($OpenHeadlinestable);
}

$num = $Verzoeken + 1;
setcookie("Verzoeken","$num",time()+3600); //set the cookie   staat op 1 uur !!
   file($VolAdres);

}
?>

<HTML>
<HEAD>
<TITLE><?php echo $GoTitle; ?></TITLE>
<META http-equiv="refresh" content="8; URL=<?php echo $GoTo; ?>">
</HEAD>
<BODY>

<?php
echo ("<font color=$FontColor face=$FontFace size=$FontSize>De plaat is verwerkt en is zo te beluisteren!<br>
Je gaat in enkele ogenblikken automatisch naar de startpagina.
<br><br>
Bedankt voor je verzoekplaat.</font>");

}
?>

Kan je jouw bericht aanpassen en de relevante code tonen van go.php tonen? Want je bericht wordt best wel een onleesbare brei.

En kan je ook uitleggen WAT er fout gaat? We hebben geen glazen bol en weten niet wat er gebeurt.

Om te beginnen is het script onduidelijk:
- Waar komt $Verzoeken vandaan?
- Waar komt $GoTo vandaan?
- Waar komt $action vandaan?
- En hoezo meta-tags voor doorsturen, en geen header() met location?

Volgens mij is het een mega-oud script met een lange lange baard....

Reageren