Jump to content
hfmalves

[Resolvido] Esclarecimento de Array & print_r

Recommended Posts

hfmalves

Boa noite a todos,

Se fizer algo de errado corrijam-me, obrigado.

Eu estou a fazer uma aplicação completa em Php de loja on-line eis que fiz da forma mais simples possível o dito "checkout".

Quando apresentei aquilo ao meu professor na universidade, ele alterou tudo e colocou com array's que nunca mais acabam e disse "desenrasca-te"..

Eis que que estou cá na tentativa desesperada de colocar os valores para compra num formulário normal em php.

Tentativa 1 : defini a valiarel $a = $valores (isto sucessivamente com nome, titulo, iva.. ele diz que não quer assim )

Tentativa 2 : no site oficial do php e n aparece nada nulo.

<?php
$b = array ('m' => 'monkey', 'foo' => 'bar', 'x' => array ('x', 'y', 'z'));
$results = print_r($b, true); // $results now contains output from print_r
?>

Tentativa restantes nem vale a pena numerar porque não deu nada, apenas erros em 84 horas.

Com o print_r aparece o dados do array mas não consegui nada e acredito que é algo que me esta a falhar.

Segue o array com print_r

Array ( [0] => Array ( [id] => 2 [utilizador_id] => 90ac031680291de1be097aa184ffe8a91e3f5822 [nid] => 40 [preco] => 388.00 [prcid] => 0 [titulo] => Meu producto [total] => 1 ) )

O que quero é passar os valores do array acima para um formulário normal por email.

Desde já agradeço a atenção de todos.

Edited by Rui Carlos

Share this post


Link to post
Share on other sites
I-NOZex

eu fiqei foi sem saber o que precisas exactamente... onde tá a tua duvida, o que queres fazer em concreto...


B2R » Beat2Revolution v3.0b | Regista e divulga-nos

beat2revolution.net

Share this post


Link to post
Share on other sites
taviroquai

Viva,

Passar os valores num formulário por email...?

Em principio não precisar ter um array dentro de outro array mas... não estou dentro do contexto, vou colocar como tens...

Pode ter falhas, não testei...

teste.php

<?php
// dados do array que indicaste
$dados = array();
$dados[0]['comprador'] = 'not yet...';

// verificar se o formulário foi submetido
if (isset($_POST['enviar'])) {
// enviar email com os dados
$dados[0] = $_POST; // carregar os dados do formulário...
ob_start();
include 'template.php';
$content = ob_get_clean();
if (!mail('prof@univ.pt', 'compra', $content)) {
	echo 'Falhou o envio do mail...';
} else {
	echo 'Dados da compra enviados...';
	exit(0);
}
}

include 'template.php';
?>

template.php

<form action="" method="post">
<label>Nome do comprador</label>
<input type="text" name="comprador" value="<?php echo $dados[0]['comprador'] ?>" />
<?php
foreach ($dados[0] as $k => $v) { ?>
<input type="hidden" name="<?php echo $k ?>" value="<?php echo $v ?>" />
<? } ?>
<button type="submit">Enviar</button>
</form>

Edited by taviroquai

Share this post


Link to post
Share on other sites
hfmalves

Viva,

Passar os valores num formulário por email...?

Em principio não precisar ter um array dentro de outro array mas... não estou dentro do contexto, vou colocar como tens...

Pode ter falhas, não testei...

teste.php

<?php
// dados do array que indicaste
$dados = array();
$dados[0]['comprador'] = 'not yet...';

// verificar se o formulário foi submetido
if (isset($_POST['enviar'])) {
// enviar email com os dados
$dados[0] = $_POST; // carregar os dados do formulário...
ob_start();
include 'template.php';
$content = ob_get_clean();
if (!mail('prof@univ.pt', 'compra', $content)) {
	echo 'Falhou o envio do mail...';
} else {
	echo 'Dados da compra enviados...';
	exit(0);
}
}

include 'template.php';
?>

template.php

<form action="" method="post">
<label>Nome do comprador</label>
<input type="text" name="comprador" value="<?php echo $dados[0]['comprador'] ?>" />
<?php
foreach ($dados[0] as $k => $v) { ?>
<input type="hidden" name="<?php echo $k ?>" value="<?php echo $v ?>" />
<? } ?>
<button type="submit">Enviar</button>
</form>

Funcionou ! =)

Tinhas as variáveis do foreach "template.php" mal definidas e tinha dois actions activos.

OBRIGADO

Share this post


Link to post
Share on other sites

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

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.