Jump to content

PHP [ مشكلة ]


Recommended Posts

السلام عليكم ورحمه الله وبركاتة

PHP حبيت ابدا اتعلم بعض الاشياء في لغه

وجيبت الكود دا من موقع

https://www.w3schools.com/php7/default.asp

 <!DOCTYPE html>
<html>
<body>

<?php
echo "Test";
?>

</body>
</html> 

مشكلتي هي : الصفحة بتكون فاضية مش ظاهر فيها حاجة

يرجي المساعده وشكرا علي وقتك :)

Link to comment
48 minutes ago, KillerX said:

السلام عليكم ورحمه الله وبركاتة

PHP حبيت ابدا اتعلم بعض الاشياء في لغه

وجيبت الكود دا من موقع

https://www.w3schools.com/php7/default.asp


 <!DOCTYPE html>
<html>
<body>

<?php
echo "Test";
?>

</body>
</html> 

مشكلتي هي : الصفحة بتكون فاضية مش ظاهر فيها حاجة

يرجي المساعده وشكرا علي وقتك :)

 

<?php

echo ('Test');

?>

 

Link to comment
Just now, KillerX said:

مثلا انا مسوي صفحة php

ازاي ارفعها علي رابط

انتا تقدر تشوفها ؟؟

local انا ما اقدر اشوفها لأنك حاطها في سيرفر خاص فيك

لكن تقدر ترفعها على رابط و انا احطها عندي في مجلد البرنامج اللي استخدمه و ادخل على الرابط من جهتي و اشوفها

 

Link to comment
Just now, NX_CI said:

local انا ما اقدر اشوفها لأنك حاطها في سيرفر خاص فيك

لكن تقدر ترفعها على رابط و انا احطها عندي في مجلد البرنامج اللي استخدمه و ادخل على الرابط من جهتي و اشوفها

 

شوفت الاخ دا كان مسوي صفحتوا في رابط

بس مدري وش صار للصفحة الحين ما بتفتح

193.200.241.6:22015/cr_webinfo/

Link to comment
4 minutes ago, KillerX said:

شوفت الاخ دا كان مسوي صفحتوا في رابط

بس مدري وش صار للصفحة الحين ما بتفتح

193.200.241.6:22015/cr_webinfo/

بالنسبة انا استخدم اكسامب برنامج ممتاز جداً و اعتقد انه الأفضل لأنه سهل جداً انصحك تستخدمه

اما بالنسبة للبرنامج اللي تستخدمه ما ادري كيف طريقته بالضبط

Link to comment

مشكلتي مش في البرنامج

5 minutes ago, NX_CI said:

بالنسبة انا استخدم اكسامب برنامج ممتاز جداً و اعتقد انه الأفضل لأنه سهل جداً انصحك تستخدمه

اما بالنسبة للبرنامج اللي تستخدمه ما ادري كيف طريقته بالضبط

 

Link to comment
Just now, NX_CI said:

انت تقول انو الصفحة ما تفتح معاك

لالالا فهمتني غلط

انا عندي صفحة بي اتش بي تفتح وكل شئ تمام

ابي ارفعها علي رابط

والكل يشوفها زي ما الاخ كان عامل في الموضوع بتاعوا فوق

وشكرا تعبتك معايا :)

Link to comment
3 minutes ago, KillerX said:

لالالا فهمتني غلط

انا عندي صفحة بي اتش بي تفتح وكل شئ تمام

ابي ارفعها علي رابط

والكل يشوفها زي ما الاخ كان عامل في الموضوع بتاعوا فوق

وشكرا تعبتك معايا :)

لازم يكون عندك دومين اضن والله اعلم

  • Like 1
Link to comment
1 hour ago, KillerX said:

لالالا فهمتني غلط

انا عندي صفحة بي اتش بي تفتح وكل شئ تمام

ابي ارفعها علي رابط

والكل يشوفها زي ما الاخ كان عامل في الموضوع بتاعوا فوق

وشكرا تعبتك معايا :)

استخدم استضافة 

000webhost

  • Thanks 1
Link to comment
21 hours ago, Master_MTA said:

افتح بورتات بالمودم بس ذا بيضر بامان جهازك وشبكتك

شكرا يا عسل

 

_____________________________

 

استفسار اخر

عندي الكود دا الغرض منوا يعرضلي عدد الاعبين اللي في السيرفر

<?php
require( "mta_sdk.php" );
$mtaServer = new mta("62.210.56.139:28015", 28015 , "xxxxx" , "xxxxxx");
$resource = $mtaServer->getResource ( "log" );
$retn = $resource->call ( "getPlayerCount" );
each $retn[0]
?> 

بعد التعديلات المذكورة في الويكي php sdk ودا ملف

<?php
/**
************************************
* MTA PHP SDK
************************************
*
* @copyright	Copyright (C) 2010, Multi Theft Auto
* @author		JackC, eAi, Sebas
* @link			http://www.mtasa.com
* @version		0.4
*/

class mta
{
	private $useCurl = false;
	private $sockTimeout = 6; // seconds
	
	public $http_username = '';
	public $http_password = '';
	
	public $host = '';
	public $port = '';
	
	private $resources = array();
	
	public function __construct( $host, $port, $username = "", $pass = "" )
	{
		$this->host = $host;
		$this->port = $port;
		$this->http_username = $username;
		$this->http_password = $pass;
	}
	
	public function getResource ( $resourceName )
	{
		foreach ( $this->resources as $resource )
		{
			if ( $resource->getName == $resourceName )
				return $resource;
		}
		
		$res = new ResourceClass ( $resourceName, $this );
		$this->resources[] = $res;
		return $res;
	}
	
	public static function getInput()
	{
		$out = mta::convertToObjects( json_decode( file_get_contents('php://input'), true ) );
		return (is_array($out)) ? $out : false;
	}
	
	public static function doReturn()
	{
		$val = array();
		
		for ( $i = 0; $i < func_num_args(); $i++ )
		{
			$val[$i] = func_get_arg($i);
	    }
		
		$val = mta::convertFromObjects($val);
		$json_output = json_encode($val);
		echo $json_output;
	}
	
	public function callFunction( $resourceName, $function, $args )
	{
		if ( $args != null )
		{
			$args = mta::convertFromObjects($args);
			$json_output = json_encode($args);
		}
		else
		{
			$json_output = "";
		}
		$path = "/" . $resourceName . "/call/" . $function;
		$result = $this->do_post_request( $this->host, $this->port, $path, $json_output );
		//echo $json_output;
		$out = mta::convertToObjects( json_decode( $result, true ) );
		
		return (is_array($out)) ? $out : false;
	}
	
	public static function convertToObjects( $item )
	{
		if ( is_array($item) )
		{
			foreach ( $item as &$value ) 
			{
				$value = mta::convertToObjects( $value );
			}
		}
		else if ( is_string($item) )
		{	
			if ( substr( $item, 0, 3 ) == "^E^" )
			{
				$item = new ElementClass( substr( $item, 3 ) );
			}
			elseif ( substr( $item, 0, 3 ) == "^R^" )
			{
				$item = $this->getResource( substr( $item, 3 ) );
			}
		}
		
		return $item;
	}
	
	public static function convertFromObjects( $item )
	{
		if ( is_array($item) )
		{
			foreach ( $item as &$value ) 
			{
				$value = mta::convertFromObjects($value);
			}
		}
		elseif ( is_object($item) )
		{	
			if ( get_class($item) == "ElementClass" || get_class($item) == "ResourceClass" )
			{
				$item = $item->toString();
			}
		}
		
		return $item;
	}
	
	function do_post_request( $host, $port, $path, $json_data )
	{
		if ( $this->useCurl )
		{
			$ch = curl_init();   
			curl_setopt( $ch, CURLOPT_URL, "http://{$host}:{$port}{$path}" ); 
			curl_setopt( $ch, CURLOPT_POST, 1 );
			curl_setopt( $ch, CURLOPT_POSTFIELDS, $json_data );
			$result = curl_exec($ch);    
			curl_close($ch); 
			return $result;
		}
		else
		{
			if ( !$fp = @fsockopen( $host, $port, $errno, $errstr, $this->sockTimeout ) )
			{
				throw new Exception( "Could not connect to {$host}:{$port}" );
			}

			$out = "POST {$path} HTTP/1.0\r\n";
			$out .= "Host: {$host}:{$port}\r\n";
			
			if ( $this->http_username && $this->http_password )
			{
				$out .= "Authorization: Basic " . base64_encode( "{$this->http_username}:{$this->http_password}" ) . "\r\n";
			}
			
			$out .= "Content-Length: " . strlen($json_data) . "\r\n";
			$out .= "Content-Type: application/x-www-form-urlencoded\r\n\r\n";
			//$out .= "Connection: close\r\n\r\n";
			$out .= $json_data . "\r\n\r\n";
			
			if ( !fputs( $fp, $out ) )
			{
				throw new Exception( "Unable to send request to {$host}:{$port}" );
			}
			
			@stream_set_timeout( $fp, $this->sockTimeout );
			$status = @socket_get_status($fp);
			
			$response = '';
			
			while ( !feof($fp) && !$status['timed_out'] )
			{
				$response .= fgets( $fp, 128 );
				$status = socket_get_status($fp);
			}
			
			fclose( $fp );
			
			$tmp = explode( "\r\n\r\n", $response, 2 );
			$headers = $tmp[0];
       		$response = trim($tmp[1]);
       		
       		preg_match( "/HTTP\/1.(?:0|1)\s*([0-9]{3})/", $headers, $matches );
       		$statusCode = intval($matches[1]);
       		
       		if ( $statusCode != 200 )
       		{
       			switch( $statusCode )
       			{
       				case 401:
       					throw new Exception( "Access Denied. This server requires authentication. Please ensure that a valid username and password combination is provided." );
       				break;
       				
       				case 404:
       					throw new Exception( "There was a problem with the request. Ensure that the resource exists and that the name is spelled correctly." );
       				break;
       			}
       		}
       		
       		if ( preg_match( "/^error/i", $response ) )
       		{
       			throw new Exception( ucwords( preg_replace("/^error:?\s*/i", "", $response ) ) );
       		}
			
			return $response;
		}
	}
}

class ElementClass
{
	var $id;

	function Element($id)
	{
		$this->id = $id;
	}

	function toString()
	{
		return "^E^" . $this->id;
	}
}


class ResourceClass
{
	var $name;
	private $server;

	function Resource($name, $server)
	{
		$this->name = $name;
		$this->server = $server;
	}

	function toString()
	{
		return "^R^" . $this->name;
	}
	
	public function getName()
	{
		return $this->name;
	}
	
	function call ( $function )
	{
		
		$val = array();
		
		for ( $i = 1; $i < func_num_args(); $i++ )
		{
			$val[$i-1] = func_get_arg($i);
	    }
		return $this->server->callFunction ( $this->name, $function, $val );
	}
}
?>

وانا عاطي المود كل الصلاحيات و كمان معطي الحساب كل الصلاحيات

الاخطاء اللي تجيني

Fatal error: Cannot use temporary expression in write context in C:\wamp\www\test.php on line 6

لما احذف سطر 6

Fatal error: Uncaught Error: Call to a member function callFunction() on null in C:\wamp\www\mta_sdk.php:257 Stack trace: #0 C:\wamp\www\test.php(5): ResourceClass->call('getPlayerCount') #1 {main} thrown in C:\wamp\www\mta_sdk.php on line 257

وشكرا

Link to comment
11 minutes ago, KillerX said:

عندي الكود دا الغرض منوا يعرضلي عدد الاعبين اللي في السيرفر

لو ناوي على شي مثل لوحة ادمن على موقع فانسا الموضوع انا حاليا

شغال عليها:D

 

  • Like 1
Link to comment
1 minute ago, Master_MTA said:

لو ناوي على شي مثل لوحة ادمن على موقع فانسا الموضوع انا حاليا

شغال عليها:D

 

لا مجرد تجربة :)

بس لقيت الاخطاء دي في وشي

ياليت تساعدني :)

Link to comment
Just now, Master_MTA said:

شوف php sdk 

بصفحة الويكي وشوف اصدار ال php

حقك

وعدل على اساسها الاشياء

7.2.14 اصداري

وعلي اساس الكلام دا انا عدلت

Note for version 0.4

On line 80 in mta_sdk.php you will find the string:

echo $json_output;

Replace that one with:

//echo $json_output;

Or remove it completly!

Note for PHP 7.2.10 (and upwards)

Methods with the same name as their class will not be constructors in a future version of PHP (7.0.x)+

Using PHP 7.2.10 this seems to break completely

On line 211 and 227 in mta_sdk.php find the following:

line 211: class Element
line 227: class Resource

Change these to:

line 211: class ElementClass
line 227: class ResourceClass

Now on line 42 and 99 find the following:

line 42: $res = new Resource ( $resourceName, $this );
line 99: $item = new Element( substr( $item, 3 ) );

Change these to:

line 42: $res = new ResourceClass ( $resourceName, $this );
line 99: $item = new ElementClass( substr( $item, 3 ) );

Now finally, on line 121, change this:

if ( get_class($item) == "Element" || get_class($item) == "Resource" )

To this:

if ( get_class($item) == "ElementClass" || get_class($item) == "ResourceClass" )

All fixed!

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...