Autor Zpráva
Risek
Profil
Ahoj, můžete mi prosím proradit co dělám špatně? Celý script je taková splácanina co sem našel na internetu takže nepoznám co dělám špatně .. ja v PHP neumim ... Díky :-)


<?php
$name=$_GET['customer_text'];
$money13=13;
$money23=23;
$money39=39;
$money49=49;
$money=$_GET['credit'];
$command1='eco give $name 10000'

if($money13 == $money){
function console($command1)
{
  $ch = curl_init();
 
  curl_setopt($ch, CURLOPT_URL, "http://mc2.n1ce.cz:8765/console?command=$command1");
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
 
  $output=curl_exec($ch);
 
  curl_close($ch);
 
  return $output;
}
}
?>
Zechy
Profil
Co to dělá, co to nedělá, co to píše ,popřípadně nepíše? Timhle stylem tady máte kod a najdetě mi chybu ti moc nepomůže v tom aby se našel někdo kdo bude vědět co s tim.
Risek
Profil
Zechy:

Script příjme metodou GET 2 proměny name a money. A ty pak vloží do scriptu kterej bude když bude money 13 tak aktivuje 1 příkaz, když bude 23 tak aktivuje jinej příkaz... A ten příkaz ten by měl nějak otevřít adresu jakoby v prohlížeči ... a když je ta adresa zavolaná tak se mi neco aktivuje na serveru ...

Hází mi to chybu : Parse error: syntax error, unexpected T_IF in /home/users/negato/mc-wiki.eu/sub/sms/smstest.php on line 9
Majkl578
Profil
Chybí ti středník na 8. řádku.

Název proměnných $money* nedává moc smysl, proč to jsou proměnné, když se jmenují stejně jako hodnota?
Podmíněně deklarovat funkci je přinejmenším k zamyšlení.
Risek
Profil
Majkl578:

Středníku sem si všiml asi před 2 minutama ale díky :-) teť sice nehazí script chybu ale pořád nefunguje :-( Jo ja s PHP nejak moc neumim proto sem tam daval proměny ... takže stačí normalně napsat if(13 == $money){?


Normalně to funguje že když dám do prohlížeče http://mc2.n1ce.cz:8765/console?command=eco give Risek 10000 tak se mi na serveru přičte 10 000. a Teť bych potřeboval aby když příjde z sms třeba číslo 13 tak script použije ten příkaz http://mc2.n1ce.cz:8765/console?command=ecogive Risek 10000 .
Beavis
Profil
Risek:
if(13 == $money){
Já osobně preferuju uvádět první proměnnou, se kterou chci porovnávat, a až potom konkrétní řetězec / proměnnou. Přijde mi to jako standard. Podle čeho soudíš, že to nefunguje?
Jinak 8. řádek by měl dle mého být spíš takhle:
$command1='eco give ' .  $name . ' 10000';
Risek
Profil
Beavis:

Díky za rady :-) část scriptu funguje ale nějak nefunguje tahle část ... Když ten script zkustim tak se na serveru nic nestane ... Potřeboval bych do if dostat cokoliv co by zavolalo adresu http://mc2.n1ce.cz:8765/console?command=eco give Risek 10000

function console($command1)
{
  $ch = curl_init();
 
  curl_setopt($ch, CURLOPT_URL, "http://mc2.n1ce.cz:8765/console?command=$command1");
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
 
  $output=curl_exec($ch);
 
  curl_close($ch);
 
  return $output;
}
Risek
Profil
Zkusil sem to takhle ale nevim jak na to bude reagovat sms server ze kteryho mi příjdou proměny name a money ...

<?php
$name=$_GET['customer_text'];
$money=$_GET['credit'];
$command1='eco give ' .  $name . ' 10000';
$command2='eco give ' .  $name . ' 20000';
$command3='eco give ' .  $name . ' 30000';
$command4='eco give ' .  $name . ' 40000';

if($money == 13){
header("Location: http://mc2.n1ce.cz:8765/console?command=$command1");
} elseif ($money == 23) {
header("Location: http://mc2.n1ce.cz:8765/console?command=$command2");
} elseif ($money == 39) {
header("Location: http://mc2.n1ce.cz:8765/console?command=$command3");
} elseif ($money == 49) {
header("Location: http://mc2.n1ce.cz:8765/console?command=$command4");
}
?>
Beavis
Profil
Risek:
Řešil bych to spíš přes curl než přes header - aby uživatel neviděl tu adresu a následně to nezneužil.
Risek
Profil
Beavis:
Ja s curl neumim ale tak snad to bude fungovat i takhle ... uživatel by se k tomuhle neměl dostat .. něměl by ani vědět že tenhle script existuje :-)
Risek
Profil
Jak by ste to resili pres curl ? ja tu curl moc nechapu ... potřeboval bych do if dat neco co v pozadi zavola adresu http://mc2.n1ce.cz:8765/console?command=$command2 ... zkousel sem třeba tohle .. ale nefunguje mi to.

$command='say Testovaci zprava z internetu';;
$command=urlencode($command);

function console($command)
{
  $ch = curl_init();
 
  curl_setopt($ch, CURLOPT_URL, "http://127.0.0.1:8765/console?command=$command");
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
 
  $output=curl_exec($ch);
 
  curl_close($ch);
 
  return $output;
}

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: