Jump to content


wawasurf

Member Since 01/09/2004
Offline Last Active 10/07/2013, 13:50
-----

Topics I've Started

Imiprimir Variaveis Xml

24/06/2013, 10:46

Olá,


Estou com bastante dificuldade de imprimir informações vindo de um xml com o PHP.

A requisição do wml é assim:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<LoginHeader Domain="myDomain" xmlns="http://TrendOperadora.SIG.XML.DataTypes/2007/09">
<AccessCode>99999999</AccessCode>
<UserName>myUserName</UserName>
<Password>myPassword</Password>
</LoginHeader>
</soap:Header>
<soap:Body>
<SearchHotelRequest xmlns="http://TrendOperadora.SIG.XML.ServiceContracts/2007/09">
<DestinationId>5238</DestinationId>
<CheckIn>2007-12-13</CheckIn>
<CheckOut>2007-12-16</CheckOut>
<RoomsInformation>
<RoomInfoType>
<AdultsNum xmlns="http://TrendOperadora.SIG.XML.DataTypes/2007/09">2</AdultsNum>
<ChildrenNum xmlns="http://TrendOperadora.SIG.XML.DataTypes/2007/09">2</ChildrenNum>
<ChildAges xmlns="http://TrendOperadora.SIG.XML.DataTypes/2007/09">
<short>4</short>
<short>5</short>
</ChildAges>
</RoomInfoType>
<RoomInfoType>
<AdultsNum xmlns="http://TrendOperadora.SIG.XML.DataTypes/2007/09">2</AdultsNum>
<ChildrenNum xmlns="http://TrendOperadora.SIG.XML.DataTypes/2007/09">0</ChildrenNum>
</RoomInfoType>
</RoomsInformation>
<MaxAvrNightPrice>300</MaxAvrNightPrice>
<AvailableOnly>True</AvailableOnly>
</SearchHotelRequest>
</soap:Body>
</soap:Envelope>



A resposta do xml deve ficar assim:

<SearchHotelResult
xmlns="http://TrendOperadora.SIG.XML.DataTypes/2007/09/SearchHotelResult.xsd">
<RoomsInfoResquested RoomsInfoResquestedId="400111">
<RoomRequested Index="0" RoomResquestedId="400111" numAdults="2" numChildren="2"
ChildAges="4;5" AccomodationTypeId="3" AccomodationType="TPL" />
<RoomRequested Index="1" RoomResquestedId="400111" numAdults="2" numChildren="0"
ChildAges="" AccomodationTypeId="2" AccomodationType="DBL" />
</RoomsInfoResquested>
<Hotel HotelId="100002" Name="SAN JUAN SAO PAULO" Chain="SAN JUAN" CategoryId="4"
Category="QUATRO ESTRELAS" Description="" Address="RUA AURORA, 909, VILA BUARQUE"
Location="SAO PAULO, SP, BRASIL" Thumb="0000000000_0.gif" Currency="BRL"
minAvrNightPrice="250" minAvrNightPriceNet="225" Tax="0" IsAvailable="true" minNights="0">
<RoomType RoomTypeId="7183" Name="DBL - LUX" HotelId="100002" BoardBaseId="8"
BoardBase="CAFÉ DA MANHÃ" BedTypeId="0" BedType="" AccomodationTypeId="2"
AccomodationType="DUPLO" avrNightPrice="110" avrNightPriceNet="99" Tax="0"
qtyAvailable="5">
<PricesAndAvailability RoomTypeId="7183" Date="2007-12-13T00:00:00-02:00" Price="110"
PriceNet="99" Tax="0" qtyAvailable="5" RateTypeId="0" RateType="NORMAL" />
<PricesAndAvailability RoomTypeId="7183" Date="2007-12-14T00:00:00-02:00" Price="110"
PriceNet="99" Tax="0" qtyAvailable="5" RateTypeId="0" RateType="NORMAL" />
<PricesAndAvailability RoomTypeId="7183" Date="2007-12-15T00:00:00-02:00" Price="110"
PriceNet="99" Tax="0" qtyAvailable="5" RateTypeId="0" RateType="NORMAL" />
</RoomType>
<RoomType RoomTypeId="7185" Name="TPL - LUX" HotelId="100002" BoardBaseId="8"
BoardBase="CAFÉ DA MANHÃ" BedTypeId="0" BedType="" AccomodationTypeId="3"
AccomodationType="TRIPLO" avrNightPrice="140" avrNightPriceNet="126" Tax="0"
qtyAvailable="3">
<PricesAndAvailability RoomTypeId="7185" Date="2007-12-13T00:00:00-02:00" Price="140"
PriceNet="126" Tax="0" qtyAvailable="3" RateTypeId="0" RateType="NORMAL" />
<PricesAndAvailability RoomTypeId="7185" Date="2007-12-14T00:00:00-02:00" Price="140"
PriceNet="126" Tax="0" qtyAvailable="3" RateTypeId="0" RateType="NORMAL" />
<PricesAndAvailability RoomTypeId="7185" Date="2007-12-15T00:00:00-02:00" Price="140"
PriceNet="126" Tax="0" qtyAvailable="3" RateTypeId="0" RateType="NORMAL" />
</RoomType>
</Hotel>
<Hotel HotelId="100018" Name="TESTE PLAZA (HOTEL P/ TREINAMENTO DE EMISSORES)"
Chain="--" CategoryId="1" Category="UMA ESTRELA" Description="Com localização privilegiada
entre a Baia do Nunca e o Neverland Trade Center, o Teste Plaza une negócios e lazer em um
ambiente requintado e aconchegante." Address="TERRA DO NUNCA, S/N, NEVERLAND"
Location="SAO PAULO, SP, BRASIL" Thumb="0000000082_A.JPG" Currency="BRL"
minAvrNightPrice="300"minAvrNightPriceNet="270" Tax="15" IsAvailable="true" minNights="0">
<RoomType RoomTypeId="5440" Name="DBL - SUP" HotelId="100018" BoardBaseId="0"
BoardBase="NÃO INCLUI" BedTypeId="0" BedType="" AccomodationTypeId="2"
AccomodationType="DUPLO" avrNightPrice="140" avrNightPriceNet="126" Tax="15"
qtyAvailable="10">
<PricesAndAvailability RoomTypeId="5440" Date="2007-12-13T00:00:00-02:00" Price="140"
PriceNet="126" Tax="15" qtyAvailable="10" RateTypeId="0" RateType="NORMAL" />
<PricesAndAvailability RoomTypeId="5440" Date="2007-12-14T00:00:00-02:00" Price="140"
PriceNet="126" Tax="15" qtyAvailable="10" RateTypeId="0" RateType="NORMAL" />
<PricesAndAvailability RoomTypeId="5440" Date="2007-12-15T00:00:00-02:00" Price="140"
PriceNet="126" Tax="15" qtyAvailable="10" RateTypeId="0" RateType="NORMAL" />
</RoomType>
<RoomType RoomTypeId="5444" Name="TPL - SUP" HotelId="100018" BoardBaseId="0"
BoardBase="NÃO INCLUI" BedTypeId="0" BedType="" AccomodationTypeId="3"
AccomodationType="TRIPLO" avrNightPrice="160" avrNightPriceNet="144" Tax="15"
qtyAvailable="10">
<PricesAndAvailability RoomTypeId="5444" Date="2007-12-13T00:00:00-02:00" Price="160"
PriceNet="144" Tax="15" qtyAvailable="10" RateTypeId="0" RateType="NORMAL" />
<PricesAndAvailability RoomTypeId="5444" Date="2007-12-14T00:00:00-02:00" Price="160"
PriceNet="144" Tax="15" qtyAvailable="10" RateTypeId="0" RateType="NORMAL" />
<PricesAndAvailability RoomTypeId="5444" Date="2007-12-15T00:00:00-02:00" Price="160"
PriceNet="144" Tax="15" qtyAvailable="10" RateTypeId="0" RateType="NORMAL" />
</RoomType>
</Hotel>
</SearchHotelResult>

Já consegui pegar por arrays, os valores das variáveis do Método RoomsInfoResquested e do método Hotel. Agora quero imprimir os valores do método Roomtype que se perceber no xml response, fica dentro do método Hotel. Como eu poderia juntar o metodo Hotel com o Roomtype, para dai sim imiprimir os valores do metodo Roomtype?

Aqui esta o código que usei para imprimir os valores das variáveis dos métodos RoomsInfoResquested e Hotem:


RoomsInfoResquested
echo "<br>RoomRequested<table border='1'>
							<td>Index</td>
							<td>RoomResquestedId</td>
							<td>numAdults</td>
							<td>numChildren</td>
							<td>ChildAges</td>
							<td>AccomodationTypeId</td>
							<td>AccomodationType</td>
				";
				
		
				
				
		if (isset($result['SearchHotelResult']['diffgram']['SearchHotelResult']['RoomsInfoResquested']['RoomRequested'])) 
		{
			$locais = $result['SearchHotelResult']['diffgram']['SearchHotelResult']['RoomsInfoResquested']['RoomRequested'];
	
			if (isset($locais[0]))
			{
				foreach($locais as $key=>$val)
				{
					echo "<tr>
							<td>{$locais[$key]['!Index']}</td>
							<td>{$locais[$key]['!RoomResquestedId']}</td>
							<td>{$locais[$key]['!numAdults']}</td>
							<td>{$locais[$key]['!numChildren']}</td>
							<td>{$locais[$key]['!ChildAges']}</td>
							<td>{$locais[$key]['!AccomodationTypeId']}</td>
							<td>{$locais[$key]['!AccomodationType']}</td>
					  </tr>";
				}
			}
			else
			{
				echo "<tr>
							<td>{$locais['!Index']}</td>
							<td>{$locais['!RoomResquestedId']}</td>
							<td>{$locais['!numAdults']}</td>
							<td>{$locais['!numChildren']}</td>
							<td>{$locais['!ChildAges']}</td>
							<td>{$locais['!AccomodationTypeId']}</td>
							<td>{$locais['!AccomodationType']}</td>
				  </tr>";
			}
		}
		else
		{
			echo "<tr>
					<td>---</td>
					<td>---</td>
			  </tr>";
		}
		echo "</tbody></table>";

Hotel

echo "<br/>sss<table border='1'>

				<thead>

					<th>HotelId </th>
					
					<th>Name </th>
					
					<th>Chain </th>
					
					<th>CategoryId </th>
					
					<th>Category </th>
					
					<th>Description </th>
					
					<th>Address </th>
					
					<th>Location </th>

					<th>Thumb </th>

					<th>Currency </th>
					
					<th>minAvrNightPrice </th>
					
					<th>minAvrNightPriceNet </th>

					<th>Tax </th>

					<th>IsAvailable </th>

					<th>HotelPreferencial </th>
					
					<th>minNights </th>
					
				</thead>

				<tbody>";
				
		$locais = $result['SearchHotelResult']['diffgram']['SearchHotelResult']['Hotel'];
		$locais_2 = $result_2['SearchHotelResult']['diffgram']['SearchHotelResult']['Hotel']['RoomType'];
		
		print_r ($result_2);
		asort($locais);
		
		foreach($locais as $key=>$val)
		{

	
			$total_dias_3=$locais[$key]['!minAvrNightPrice'];
			              
			$total_dias_4=number_format($total_dias_3, 2, ',', '.');
			
			
			$total_dias=$dias*$locais[$key]['!minAvrNightPrice'];
			
			$total_dias_2=number_format($total_dias, 2, ',', '.');
			
			$total_2= $Adultos_hotel*$total_dias;
			$total=number_format($total_2, 2, ',', '.');



	

			
			echo "<tr>

					<td><a href=\"procura_hotel_detalhes.php?HotelId={$locais[$key]['!HotelId']}\">Mais detalhes</a><br />
<br />
<a href=\"procura_hotel_id.php?HotelId={$locais[$key]['!HotelId']}&Dataentrada_hotel_convertida=$Dataentrada_hotel_convertida&Datasaida_hotel_convertida=$Datasaida_hotel_convertida&Adultos_hotel=$Adultos_hotel&Criancas_hotel=$Criancas_hotel\">Mais quartos</a></td>
					
					<td>{$locais[$key]['!Name']}</td>
					
					<td>{$locais[$key]['!Chain']}</td>
					
					<td>{$locais[$key]['!CategoryId']}</td>
					
					<td>{$locais[$key]['!Category']}</td>
					
					<td>{$locais[$key]['!Description']}</td>
					
					<td>{$locais[$key]['!Address']}</td>
					
					<td>{$locais[$key]['!Location']}</td>

					<td>{$locais[$key]['!Thumb']}</td>

					<td>{$locais[$key]['!Currency']}</td>
					
					<td>Preço por diária: <br/>$total_dias_4<br/><br/>Total de $dias diárias: <br/>$total_dias_2
					
					<br/><br/>Adultos: <br/>$Adultos_hotel
					<br/><br/>Total: <br/>$total
					
					</td>
					
					<td>{$locais[$key]['!minAvrNightPriceNet']}</td>

					<td>{$locais[$key]['!Tax']}</td>
					
					<td>{$locais[$key]['!IsAvailable']}</td>
					
					<td>{$locais[$key]['!HotelPreferencial']}</td>
					
					<td>{$locais[$key]['!minNights']}</td>

				  </tr>";
				  
}

	echo "</tbody></table>";

Soap Com Php

13/03/2013, 10:27

Eu estou tentando integrar em um web service.

Ele precisa de algumas solicitações SOAP.

O código seguinte é uma amostra SOAP 1.1 solicitação e resposta, mas eu não sei como implementar isso em php?

Por favor, poderiam me ajudar com um exemplo ou referencias?

POST /hotelservices.asmx HTTP/1.1
Host: xml.trendoperadora.com.br
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://TrendOperadora.SIG.XML.ServiceContracts/2007/09/GetDestinationList"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Header>
    <LoginHeader Domain="string" Language="string" Currency="string" RequestorID="string" xmlns="http://TrendOperadora.SIG.XML.DataTypes/2007/09">
      <AccessCode>int</AccessCode>
      <UserName>string</UserName>
      <Password>string</Password>
    </LoginHeader>
  </soap:Header>
  <soap:Body />
</soap:Envelope>
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <GetDestinationListResult xmlns="http://TrendOperadora.SIG.XML.ServiceContracts/2007/09">
      <DestinationList>dataset</DestinationList>
    </GetDestinationListResult>
  </soap:Body>
</soap:Envelope>

Imprimir Dia Do Mês E Dia Da Semana

25/09/2012, 16:43

Olá,

Existe alguma maneira de imprimir na tela os dias dos meses e das semanas a partir da data do momento do acesso do site até 2015 com o PHP? Se sim, como poderia fazer isso?

Recuperar Valores Do Array

20/08/2012, 17:14

Olá

Tenho essa estrutura de repetição:


$array = array();
$max=count($_SESSION['cart']);
for($i=0;$i<$max;$i++){

$pid=$_SESSION['cart'][$i]['productid'];
$array[]=get_product_name($pid);  

$i_quantidade=$_REQUEST['quantidade'.$i];    

echo "Quantidade" . $i_quantidade ."<br>";       

}

Pego os valores da variavel $array[] assim:

$produtos = "";
foreach ($array as $value) {
	
$produtos ="". $produtos ." ". $value ."<br />";
}

Agora quero incluir mais uma variavel para que o foreach pegue também os valores de $i_quantidade ali do for, como posso fazer isso?

Fiz assim e deu quase certo:

$array = array();
$max=count($_SESSION['cart']);
for($i=0;$i<$max;$i++){

$pid=$_SESSION['cart'][$i]['productid'];
$array[]=get_product_name($pid) ." - Quantidade - ". $i_quantidade;  

$i_quantidade=0;
$i_quantidade=$_REQUEST['quantidade'.$i];    

echo "Quantidade" . $i_quantidade ."<br>";       

}

Só que ele imprimina tela assim?

ES-022 - Quantidade - 
Plana - Quantidade - 300
Fumê - Quantidade - 400

Quando deveria ser assim:
ES-022 - Quantidade - 300
Plana - Quantidade - 400
Fumê - Quantidade - 500

Resolvi meu problema assim:


$array = array();
$max=count($_SESSION['cart']);
for($i=0;$i<$max;$i++){

$i_quantidade=$_REQUEST['quantidade'.$i];    

$pid=$_SESSION['cart'][$i]['productid'];
$array[]="<br />".get_product_name($pid) ." <br /><strong>Quantidade</strong> - ". $i_quantidade . "";  

}

Pegar Valores Do Formulário

20/08/2012, 14:46

Olá

Tenho essa estrutura de repetição que gera um campo para o usuario digitar a quantidade de cada produto que ele quer orçar, minha dúvida eh como eu posso pegar esse valores digitados pela usuario e imprimir na tela.

<?
			if(is_array($_SESSION['cart'])){
				$max=count($_SESSION['cart']);
				for($i=0;$i<$max;$i++){
					$pid=$_SESSION['cart'][$i]['productid'];
					$pnome=get_product_name($pid);
			?>
            		<div align="left"><?=$i+1?> - <?=$pnome?><br>
Quantidade: <input type="text" name="quantidade<?=$i?>" size="4" /><? echo "<br><br>"; ?></div>
            <?					
				}
            }
			else{
				echo "<tr bgColor='#FFFFFF'><td>Não há itens em sua lista de pedidos.</td>";
			}
		?>

Estou pegando os dados do formulario assim, mais naum esta dando certo

$i_quantidade=$_REQUEST['quantidade'][$i];


ele gera um input para cada produto e da o nome do input assim:

quantidade0
quantidade1
quantidade2
quantidade3

IPB Skin By Virteq